0

私のアプリケーションには複数のフラグメントがありますが、フラグメントを切り替えることができませんでした。button1 をクリックすると、正しいフラグメントが表示されます。しかし、button2 をクリックすると、対応するフラグメントが表示されません。

以下は私の関連コードです:

fragmentM = getFragmentManager();
transation = fragmentM.beginTransaction();
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.search:
break;
case R.id.btnun:
detail = new DetailFragment();
transation.add(R.id.fragment_container, detail);
transation.addToBackStack(null);
transation.commit();
break;
case R.id.btnch:
detailt = new DetailtFragment();
transation.replace(R.id.fragment_container, detailt);
transation.addToBackStack(null);
transation.commit();
break;
}
4

2 に答える 2

0

それらは Fragment の異なるクラスのように見えるので、問題ないと思います。

getFragmentManager.beginTransaction() 行を onClick メソッドの先頭に移動してみてください。変更を行うたびに新しいトランザクションを取得する必要があることを理解しています。

于 2012-11-16T08:11:31.807 に答える
0

コードでは、両方のボタンが を作成してDetailFragmentいるため、同じフラグメントが常に存在します。

于 2012-11-16T07:58:56.557 に答える