【问题标题】:Action bar back button from un activity to previous activity fragment从联合国活动到上一个活动片段的操作栏后退按钮
【发布时间】:2014-04-15 01:35:16
【问题描述】:

我在包含许多片段的主要活动中使用导航抽屉

例如: 我有片段 1 用于演示 以及包含 listView 的 fragment2。 如果我单击 listView 中的一个项目,它将启动另一个活动 当我单击操作栏后退按钮时,我想转到主要活动片段2

但是使用了fragment1

如何使用第二个片段

感谢您的回答

【问题讨论】:

  • 你能把你的代码放上来吗?

标签: android android-actionbar navigation-drawer


【解决方案1】:

在你的第二个活动的 onCreate 中,放(虽然我认为你已经有了):

getActionBar().setDisplayHomeAsUpEnabled(true);

在第二个活动的选项处理中(我认为你也这样做了):

@Override
public boolean onOptionsItemSelected(MenuItem item) 
{
    switch (item.getItemId()) 
    {
    case android.R.id.home:
            //perhaps use intent if needed but i'm sure there's a specific intent action for up you can use to handle
            finish();
        return true;
    default:
        return super.onOptionsItemSelected(item);
    }
}

在你的第一个活动的 onCreate 的意图处理程序中,例如:

if(Intent.ACTION_VIEW.equals(action))

您使用 viewpager.setCurrentItem(position) 设置 viewpager 的当前页面。如果您想更改不同项目的页面,您可以在第二个活动中使用 intent.putExtra(),然后在第一个活动中检索它。

【讨论】:

  • if条件中传入的动作是什么。
【解决方案2】:

我在第二个活动中添加了以下代码:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
onBackPressed();
        return true;
    }

一切正常

这是一个干净的解决方案吗?

谢谢

【讨论】:

  • 没有。这意味着使用您的任何选项都只会执行 onBackPressed。像我一样把它放在开关盒里,除非你打算没有任何其他选择。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多