2015-02-05 3 views
1

Есть ли разница в добавлении фрагмента в макет действия в коде или добавление его в xml?Активность + Фрагмент: добавить фрагмент в код по сравнению с xml

if (savedInstanceState == null) { 
     getFragmentManager().beginTransaction() 
       .add(R.id.container, CardViewFragment.newInstance()) 
       .commit(); 
} 

против

<?xml version="1.0" encoding="utf-8"?> 
<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
    android:name="com.example.CardViewFragment" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:tag="tag_cardview_fragment" /> 
+0

не следует проголосовать, это справедливый вопрос – Murphybro2

ответ

1

Если вы используете метод кода, вы можете динамически изменять который фрагмент загружается, как на кнопку мыши или любого другого пользовательского события.

1

Оба xml и код почти аналогичны. Если бы вы использовали этот xml-код в макете действия, мы могли бы ожидать небольшой разницы в поведении Fragment.

Если вы положили это xml в действие, то фрагмент создаст/загрузит автоматически и после, чтобы вы могли получить его экземпляр.

Но здесь:

if (savedInstanceState == null) { 
     getFragmentManager().beginTransaction() 
       .add(R.id.container, CardViewFragment.newInstance()) 
       .commit(); 
} 

или

<?xml version="1.0" encoding="utf-8"?> 
<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
    android:name="com.example.CardViewFragment" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:tag="tag_cardview_fragment" /> 

Вы создаете фрагмент экземпляра первый, а затем загрузить его в к активности.

Смежные вопросы