【问题标题】:FragmentActivity Back Stack on Back Button Pressed按下后退按钮时的 FragmentActivity 返回堆栈
【发布时间】:2012-01-20 21:24:04
【问题描述】:

我正在尝试将片段实现到旧应用中,以便支持平板电脑。因为我也想支持 3.0 之前的手机,所以我使用 v4 支持包中的 FragmentActivity。

如果应用不在平板电脑上运行,我有一个主 fragmentActivity,它会打开第二个 Fragment Activity。

public class MainActivity extends FragmentActivity implements POIListFragment.ListItemSelectedListener{

    private POIDetailFragment detailFrag;
    private boolean isFirst = true;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.list_layout);

    }

    @Override
    public void onListItemSelected(String id, boolean isRest) {
        detailFrag = (POIDetailFragment) getSupportFragmentManager().findFragmentById(R.id.poiDetailFragment);

        if (detailFrag == null) {
            if(isFirst){
                isFirst = false;
            } else {
                Intent intent = new Intent(this, DetailFragmentActivity.class);
                Bundle data = new Bundle();
                data.putString("id", id);
                data.putBoolean("isRest", isRest);
                intent.putExtras(data);

                startActivity(intent);  
            }
        } else {
            detailFrag.update(id, isRest);
        }

}

这部分代码运行良好。 statActivity(intent);打开新的片段活动。但是,当在该片段活动上按下后退按钮时,整个应用程序将关闭。

我怎样才能使当前的fragmentactivity关闭而显示前一个?

【问题讨论】:

    标签: android android-fragments


    【解决方案1】:

    不幸的是新秀错误。我之前一直将该活动用作启动屏幕,因此清单中的 android:noHistory="true" 标记也是如此。在我改变它之后它工作正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-14
      • 1970-01-01
      • 2020-08-27
      • 2023-04-03
      相关资源
      最近更新 更多