我在Android级别的API级别15上遇到了actionBar兼容性问题。向上按钮不适用于此API级别
我使用android-sdk文件夹中提供的名为“actionbarcompat”的示例项目,因此我导入了所有类,并使用ActionBarActivity扩展了我的所有活动。我还在Manifest中为我的所有活动添加了这段代码:
<activity
android:name="fr.appsolute.rescue.MyActivity"
android:label="@string/title_activity_info"
android:parentActivityName=".MainActivity"
android:screenOrientation="portrait" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
</activity>
和我的ActionBarActivity:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
switch(item.getItemId()){
case android.R.id.home:
NavUtils.navigateUpFromSameTask(this);
return true;
}
return super.onOptionsItemSelected(item);
}
这允许用户触摸向上按钮(带有应用程序图标)以返回MainActivity
此代码适用于Android 2.3.3和4.2,但不适用于4.0.1,我不明白为什么。当用户触摸向上按钮时,没有任何反应。
感谢您的帮助。
PS:我不能使用外部库,我必须使用本机代码
答案 0 :(得分:0)
不确定为什么它不起作用。我同意奇怪的是它只在API 15上失败。
调用NavUtils.navigateUpFromSameTask(this)
的替代方法可能是调用finish()
。这将关闭当前活动并转到堆栈中的上一个活动。它可能会给你相同的结果。
答案 1 :(得分:0)
使用ActionBarSherlock解决它