2015-04-27 3 views
0

У меня есть макет с четырьмя макетами фрагментов, как показано ниже.
Теперь мне нужно получить доступ только к двум или трем фрагментам в зависимости от моего выбора, который из базы данных.Как получить доступ только к фрагменту из макета?

Как получить доступ только к желаемым фрагментам?

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" android:layout_height="match_parent"> 

    <FrameLayout xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" android:layout_height="match_parent" 
     tools:context="com.example.rknikhil.myapplication.fragment_sample"> 
     <LinearLayout 
      xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:orientation="vertical"> 

      <fragment 
       android:id="@+id/list_Fragment" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       class="com.example.rknikhil.myapplication.ProfileFragment" > 
      </fragment> 
      <fragment 
       android:id="@+id/list_Fragment1" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       class="com.example.rknikhil.myapplication.Notificationfragment"> 
      </fragment> 
      <fragment 
       android:id="@+id/list_Fragment2" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       class="com.example.rknikhil.myapplication.ProfileFragment"> 
      </fragment> 
      <fragment 
       android:id="@+id/list_Fragment3" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       class="com.example.rknikhil.myapplication.Notificationfragment" > 
      </fragment> 
     </LinearLayout> 
    </FrameLayout> 
</ScrollView> 
+0

может кто-то предложить мне, как установить поле класса фрагмент из моего mainactivity –

ответ

0

Вы можете просто показать и скрыть фрагмент на основе выбора. Используйте код ниже в методе OnCreateView(). т.е.

Fragment f= getFragmentManager().findFragmentById(R.id.list_Fragment); 
Fragment f1= getFragmentManager().findFragmentById(R.id.list_Fragment1); 
Fragment f2= getFragmentManager().findFragmentById(R.id.list_Fragment2); 
f1.getView().setVisibility(View.GONE); 
+0

я получаю ошибку пустого исключения в f1.getview(); –

+0

Вы использовали setContentView() в макете перед этим кодом? –