2012-01-20 73 views
0

我想實現碎片到一箇舊的應用程序,所以我可以支持平板電腦。由於我想支持pre 3.0手機,所以我使用v4支持包中的FragmentActivity。FragmentActivity返回堆棧按鈕返回按鈕

我有一個主要的fragmentActivity,如果應用程序未在平板電腦上運行,則會打開第二個片段活動。

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關閉以揭示前一個?

回答

0

不幸的是菜鳥錯誤。我以前一直在使用該活動作爲啓動屏幕,並且清單中的android:noHistory =「true」標記也是如此。我改變了之後它的工作很好。