从ActionBar中的启动器图标返回

时间:2014-02-05 06:44:47

标签: android navigation android-actionbar

我正在使用ActionBar创建android-support-v7-appcompat。在操作栏中,我已启用徽标启用导航,并且在API级别为17的设备上正常工作。但是当我在API级别10设备上运行我的应用程序时,它无法正常工作。请帮我。提前谢谢。

在活动中使用以下代码 -

private ActionBar ab;
ab = getSupportActionBar();
ab.setDisplayHomeAsUpEnabled(true);

在清单文件中 -

<activity
 android:name=".History"
 android:screenOrientation="portrait"
 android:theme="@style/Theme.Styled"
 android:parentActivityName=".MainActivity">

1 个答案:

答案 0 :(得分:3)

以下API 11级别不支持

ActionBar。这就是您收到错误的原因。阅读this文档。

要使代码在较低版本中运行,您必须使用android-support-v7-appcompat而不是ActionBar。请阅读以下博客,了解如何从ActionBar迁移到android-support-v7-appcompat

http://android-developers.blogspot.in/2013/08/actionbarcompat-and-io-2013-app-source.html

编辑: 您可以按照here

的说明下载和设置支持库

以下是基于您更新的代码的解释

- 在Android 4.1(API级别16)的开头启用导航, 您可以通过在元素中指定android:parentActivityName属性来声明每个活动的逻辑父级。

- 如果您的应用支持Android 4.0及更低版本,请在您的应用中添加Support Library并在其中添加<meta-data>元素。然后将父活动指定为android.support.PARENT_ACTIVITY的值,与android:parentActivityName匹配 属性如下例所示,

 <activity
        android:name="com.example.myfirstapp.DisplayMessageActivity"
        android:label="@string/title_activity_display_message"
        android:parentActivityName="com.example.myfirstapp.MainActivity" >
        <!-- Parent activity meta-data to support 4.0 and lower -->
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.myfirstapp.MainActivity" />
    </activity>

了解更多信息 http://developer.android.com/training/implementing-navigation/ancestral.html 希望它可以帮到你。