如何使用操作栏上的上一个按钮

时间:2015-04-04 19:52:31

标签: android

我想使用操作栏上一个按钮。我在manifest中的活动中添加了这个xml:

android:parentActivityName="com.dariran.SearchActivity"
<meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.dariran.SearchActivity" /> 

但是当我编译我的项目时,前一页图标正在显示,当我点击它时它不起作用。

LogCat返回错误:

  

标签名称:提供商/设置。和消息:来自设置缓存,name = sound_effects_enabled,value = 0

3 个答案:

答案 0 :(得分:0)

您的目标API是什么?如果您正在为Android 4.0及更高版本开发,则必须添加标记android:parentActivityName。试试这个:

 <activity
            android:name=".Principal"
            android:label="@string/title_activity_principal"
            android:parentActivityName=".Programas" >

            <!-- Parent activity meta-data to support 4.0 and lower -->
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".Programas" />
        </activity>

更新

在你的onCreate方法中添加:

getActionBar()setDisplayHomeAsUpEnabled(真);

答案 1 :(得分:0)

在Android 4.2及更高版本上,会读取android:parentActivityName属性,所有内容都可以直接使用。要支持旧平台,您必须自己定义主动作处理:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    // Respond to the action bar's Up/Home button
    case android.R.id.home:
        NavUtils.navigateUpFromSameTask(this);
        return true;
    }
    return super.onOptionsItemSelected(item);
}

NavUtils.navigateUpFromSameTask(this);方法将读取Android 4.2或更高版本上的标准属性,并执行本机代码以上升活动堆栈或使用旧平台上的元数据使用相同的支持实现。

来源:http://developer.android.com/training/implementing-navigation/ancestral.html

答案 2 :(得分:0)

你可以关注Android网站

   http://developer.android.com/guide/topics/ui/actionbar.html