2014-12-05 3 views
0

나는 조각을 사용하여 계산기 애플 리케이션을 구축하고 나는 메뉴 항목 조각에 다시 버튼을 누르면 계산기 조각을 보여주고 싶습니다. addToBackStac (null) 사용하고 있지만 나를 위해 작동하지 않습니다. 여기 안드로이드 조각을 사용하여 스택에 다시 스택을 작동

공용 클래스 MainActivity 아래에있는 내 코드가 ActionBarActivity를 확장은 {

FragmentManager fragmentManager; 


protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    if(savedInstanceState == null){ 
    fragmentManager = getFragmentManager(); 
    FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction().addToBackStack(null); 
    CalculatorFragment calc = new CalculatorFragment(); 
    fragmentTransaction.add(R.id.relLejaut, calc); 
    fragmentTransaction.commit(); 
    } 

} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.main, menu); 
    return super.onCreateOptionsMenu(menu); 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    int id = item.getItemId(); 
    if (id == R.id.item) { 

     About about= new About(); 
     // Insert the fragment by replacing any existing fragment 

     fragmentManager.beginTransaction().addToBackStack(null).replace(R.id.relLejaut, about).commit(); 



     return true; 
    } 
    return super.onOptionsItemSelected(item); 
} 

}

먼저 addToBackStack를 (추가) 또는()하여 FragmentTransaction의 조각을 교체 한 후 호출 할 필요가

답변

0

()가 작동합니다.
다음과 같이 호출하십시오.

fragmentManager.beginTransaction(). (R.id.relLejaut, about) .addToBackStack (null) .commit();

관련 문제