Android活动到片段控件传输

时间:2015-03-03 09:36:53

标签: android

我正在创建一个带有三个标签的Android应用程序,使用PageSlidingtabStrip作为库来创建一个滑动视图。它有三个片段。每个片段都有一个列表视图。当单击列表视图的项目时,它会打开活动并显示详细信息。

问题是如何使用活动中操作栏中的后退按钮返回主屏幕中的片段

我怎样才能找到相应的片段(Tab)

3 个答案:

答案 0 :(得分:1)

尝试这样的事情:

   @Override
public void onBackPressed() {
    // TODO Auto-generated method stub
    super.onBackPressed();
   Intent intent = new Intent(YourCurrentClass.this , ClassThatYouWantToGo.class);
   startActivity(intent)
}

或者实际上就像@TommyTopas所说,你可以覆盖onBackPressed并放置this.finish();

修改

由于我已经知道你想要在你的AcitonBar上使用一个按钮,那么你可以这样做: 首先设置启用HomeButton:

getActionBar().setDisplayHomeAsUpEnabled(true);然后覆盖onOptionsItemSelected

    @Override
            public boolean onOptionsItemSelected(MenuItem item) {
                    switch (item.getItemId()) {
                    case android.R.id.home:

                     // or onBackPressed();
                     this.finish()

                    }
                    return true;
            }

答案 1 :(得分:1)

据我所知,当你回到" Tab" Activity,您希望显示单击列表项的相同选项卡。您可以执行的操作是,当单击任何选项卡中的列表项时,将选项卡编号保存在onSavedInstanceState()中,并在重新创建Activity时,然后设置先前选择的选项卡(如果之前选择了一个) )。您将savedInstanceState中保存的onSavedInstanceState()返回到同一onCreate()的{​​{1}}。

答案 2 :(得分:1)

您可以通过撰写getActionBar().setDisplayHomeAsUpEnabled(true);然后在活动中的onOptionsItemSelected方法中提供Up navigation,如果项目的ID是android.R.id.home,则调用活动的方法{{1这将关闭你当前的活动并回到你的片段