Intereting Posts
Android: пароль Validatng, совместимость пароля и передача строкового значения через кнопку Travis CI build не работает с Android Constraint Layout Решение для поиска на Android Как начать вторую активность в Android? Получение ошибки Как конвертировать веб-страницу (html, css, js) в приложение для Android Убийство нити в java-андроиде Android – покрытие кода Jacoco игнорирует тесты Robolectric Как играть в .m3u8 Stream Использование jwplayer в телефоне Android? В Android, как декодировать jpeg в формате cmyk? Как определить факторы, которые помогут воспроизвести ошибки веб-рендеринга для веб-браузеров Android? Ошибка в этом XML: ошибка синтаксического анализа XML: несвязанный префикс Как указать конкретные ссылки RTL Как вставить значения double и float в sqlite? Android Webkit: Абсолютно позиционированные элементы не уважают z-index Существует ли HttpClient, который обрабатывает запросы кэширования самостоятельно?

Фрагмент placehoder в макете

Предположим, у меня есть несколько фрагментов :

public class FirstFragment extends Fragment { ... } public class SecondFragment extends Fragment { ... } public class ThirdFragment extends Fragment { ... } 

У меня также основной вид деятельности , его содержимое ( main.xml ):

 <LinearLayout ...> <!-- How to have a fragment placehold without specify which fragment show here? --> <fragment> </LinearLayout> 

Мой вопрос заключается в том, что в файле выше файла макета, как я могу определить заполнитель фрагмента без указания того, какой фрагмент отображается здесь, а затем в java-коде My Activity , раздуйте правильный фрагмент в заполнителе?

Возможно ли и как это сделать?

Возможно. В вашем main.xml определите место для фрагмента, назовем его «fragment_placeholder»:

 <LinearLayout ...> <FrameLayout android:id="@+id/fragment_placeholder" android:layout_weight="1" android:layout_width="0px" android:layout_height="match_parent" /> </LinearLayout> 

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

 YourFragment fragment = new YourFragment(); FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.replace(R.id.fragment_placeholder, fragment); ft.commit();