2016-05-26 3 views
1

У меня есть 2 фрагмента Mainfragment имеют btn_a. Я хочу нажать эту кнопку и перейти к Twofragment.Открытие фрагмента фрагмента нажатием кнопки

Я реализовал это, но не работал. Пожалуйста, помогите мне.

После кода в onCreateView методе Main фрагмента,

ImageButton btn_a = (ImageButton)rootView.findViewById(R.id.aButton); 
     btn_a.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       TwoFragment two = new TwoFragment(); 
       getActivity().getFragmentManager().beginTransaction().replace(R.id.aFragment, two, "fragment"); 

      } 
     }); 

EDIT: Я добавил .commit();. теперь показывает еще одну ошибку: ниже no view found for id 0x7f09009b for fragment помогите мне в этом.

EDIT 2 мой код XML файла приведен ниже

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 
    <RelativeLayout 
     android:id="@+id/afragment" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" > 
     <ListView 
      android:id="@+id/aListView" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" > 
     </ListView> 
    </RelativeLayout> 
</RelativeLayout> 
+4

вы забыли позвонить ** совершить ** – Alexander

+0

убедитесь, что вы используете правильный идентификатор контейнера – SMR

+0

@ Александр Спасибо, что я пропустил это. теперь показывает новую ошибку, пожалуйста, помогите мне в этом. – tenten

ответ

3

Попробуйте как этот

getChildFragmentManager().beginTransaction().replace(R.id.aFragment, two, "fragment").commit(); 
+0

теперь показывает новую ошибку, пожалуйста, помогите мне в этом. – tenten

1

Try This

SecondFragment secFrag = new SecondFragment(); 
FragmentTransaction fragTransaction = getChildFragmentManager().beginTransaction(); 
fragTransaction.replace(R.id.frame_fragment,secFrag); 
fragTransaction.addToBackStack(null); 
fragTransaction.commit(); 
Смежные вопросы