Настроить макет панели приложений / вкладок для переключения между фрагментами - PullRequest
0 голосов
/ 06 января 2019

Я хочу иметь следующий вид: enter image description here

Меня смущает, нужно ли мне делать это, используя TabLayout с изображениями в качестве заголовка страницы, или это нужно делать через пользовательскую панель приложений? (Или это может быть достигнуто любым путем?).

В настоящее время у меня есть следующее:

enter image description here

Но вы можете видеть, что это слишком просто, я хочу, чтобы оно было более "разработанным". Вы можете видеть в моем примере, не только изображение вместо заголовка, но и изображение становится цветным. (Заголовка страницы с названием приложения нет, поэтому места для остальных материалов больше)

Я запутался со всеми PagerAdapter, TabLayout и LayoutManager. Я хотел бы увидеть рабочий пример того, чего я пытаюсь достичь. Я знаю, что не предоставил никакого кода, это потому, что я действительно не знаю, как начать делать это

1 Ответ

0 голосов
/ 06 января 2019

Во-первых, эта статья может помочь. Он покажет вам, как сделать макет вкладки только с иконками. Это очень полезно, потому что шаг за шагом показывает, как его создать. Следуйте Разделу 1 внимательно. Для Раздела 2 (Фиксированные вкладки) и Раздела 3 (Прокрутка вкладок) вам придется выбрать один. Затем перейдите к разделу 5: вкладки только с иконками.

Тогда, поскольку вам не нужен заголовок, вы можете сделать его без макета панели действий в файле values ​​/ styles.xml. Ключевой бит должен изменить ActionBar на NoActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    ...

Убедитесь, что стиль вашей деятельности соответствует именно этому стилю.

Затем вам нужно изменить цвет фона вкладки Layou. Фон вкладок также может быть другого цвета, если для атрибута в xml-файле установить другой цвет вкладок.

<android.support.design.widget.TabLayout
....
app:tabBackground="@drawable/tab_color_selector"
...
/>

Тогда в селекторе res/drawable/tab_color_selector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@color/tab_background_selected" android:state_selected="true"/>
    <item android:drawable="@color/tab_background_unselected"/>
</selector>

Обратитесь к этой статье , чтобы узнать, как изменить цвет фона.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...