-1

実際に私のプロジェクトではbutton1、1 つのフラグメントの 1 つをクリックすると、onclick(). 問題は、別のフラグメントで別のフラグメントをクリックしbutton2てから、上記の操作 (button1 操作) も実行することです。これを解決するにはどうすればよいですか?

 example
  class barfragment extends Fragment{

 button1.setonclicklistener(this);
  onclick(){
  FragmentTransaction ft=getFragmenetManager().beginTansction();


 }
  }
  class inframoation extends Fragment
     {
     BarFragment br=new BarFrgment();
      button2.setonclicklistner(br);
     }

仕事ですか?button2を クリックするとftでヌル ポインター例外 が発生します が、ボタンを iclick するとエラーが発生しません。

4

2 に答える 2

1
public void onClick(View v) 
{
  Fragment newFragment;
  if(v == btnFragment1)
  {
   newFragment = new MyFragment();
  }else{
   newFragment = new MyFragment2();
  }
   FragmentTransaction transaction = getFragmentManager().beginTransaction();
  transaction.replace(R.id.myfragment, newFragment);
  transaction.addToBackStack(null);
  transaction.commit();
 }};
于 2012-12-19T08:29:45.703 に答える
0

BarFragment の onCreateView でボタンをバインドするときは、次のように宣言します。btn=(ボタン)view.findViewById(R.id.button2); そしてIDチェック。おそらく同じIDです。別の ID を指定してみてください

于 2012-07-20T06:11:55.533 に答える