我如何使用上导航(后退按钮)导航从一个页面到其对应的上一页在android eclipse



我需要从一个页面导航到其相应的上一页(在我的应用程序中当前页面有多个上一页)。我如何使用向上导航/后退按钮来实现它

Android文档

在Manifest文件中设置父文件,然后在Activity

@Override
public boolean onOptionsItemSelected(MenuItem item)
{
    switch(item.getItemId())
    {
    case android.R.id.home:
        NavUtils.navigateUpFromSameTask(this);
        return true;
    }
    return super.onOptionsItemSelected(item);
}

或者您可以调用finish()而不是

NavUtils.navigateUpFromSameTask(this)

您必须使用ActionBar或ToolBar。

然后添加setDisplayHomeAsUpEnabled(true)

在活动上,默认情况下使用后退按钮返回到先前的按钮,但没有向上按钮。如果你想向上,输入Manifest:

android:parentActivityName=".MainActivity"

片段:

FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.addToBackStack("Tag");
. . .

您可以在清单中指定父活动

从Android 4.1 (API level 16)开始,你可以通过在元素

中指定Android: parentactical vityname属性来声明每个活动的逻辑父级

如果你的应用支持Android 4.0或更低版本,在你的应用中包含支持库,并在。然后将父activity指定为android.support的值。PARENT_ACTIVITY,匹配android: parentactical vityname属性。

例如:

 <application ... >
    ...
    <!-- The main/home activity (it has no parent activity) -->
    <activity
        android:name="com.example.myfirstapp.MainActivity" ...>
        ...
    </activity>
    <!-- A child of the main activity -->
    <activity
        android:name="com.example.myfirstapp.DisplayMessageActivity"
        android:label="@string/title_activity_display_message"
        android:parentActivityName="com.example.myfirstapp.MainActivity" >
        <!-- The meta-data element is needed for versions lower than 4.1 -->
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.myfirstapp.MainActivity" />
    </activity>
</application>

用这种方式声明父activity,你可以使用NavUtils api通过识别哪个activity是每个activity的合适的父activity来合成一个新的back stack。

你可以参考如何实现Android ActionBar后退按钮?在你的活动中实现UpNavigation

相关内容

  • 没有找到相关文章

最新更新