Помещение содержимого ниже AppBarLayout в координаторLayout

Я очень новичок в Android, и я намеревался опубликовать это в Android Developers – Google Groups, но они, похоже, говорят, что новичкам нужно отправлять сообщения в Stack Overflow. Так что я здесь.

Я загрузил последнюю версию Android Studio 1.4.1 вчера, и я выполнил инструкции по созданию своего первого приложения . Я сделал все до начала другого мероприятия . Кажется, что эти инструкции немного старые, т.е. для предыдущей версии SDK, потому что они не ссылаются на CoordinatorLayout и AppBarLayout хотя они отображаются в коде, если вы выполните шаги. Очевидно, что я сделал небольшие изменения в коде, чтобы заставить это приложение работать, но не полностью.

Моя проблема. Если вы посмотрите на изображения внизу « Запуск другого действия», вы увидите, что оба они имеют заголовок « My First App» . В моих модификациях кода я не мог получить этот заголовок как на изображениях, так и на экранах. (Я должен упомянуть, что я хочу использовать более новую версию AppBarLayout и CoordinatorLayout )

Давайте сосредоточимся на первом экране, activity_my.xml

 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context=".MyActivity"> <include layout="@layout/content_my" /> <android.support.design.widget.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:src="@android:drawable/ic_dialog_email" /> </android.support.design.widget.CoordinatorLayout> 

Как упоминалось в нижней части « Создание простого пользовательского интерфейса», content_my.xml выглядит так:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" > <EditText android:id="@+id/edit_message" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" android:hint="@string/edit_message" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button_send" android:onClick="sendMessage"/> </LinearLayout> 

В любом случае, я могу добавить AppBarLayout в activity_my.xml . Я пробовал что-то вроде:

 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:context=".MyActivity"> <android.support.design.widget.AppBarLayout android:layout_height="wrap_content" android:layout_width="match_parent" android:theme="@style/AppTheme.AppBarOverlay"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay" /> </android.support.design.widget.AppBarLayout> <include layout="@layout/content_my" /> <android.support.design.widget.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:src="@android:drawable/ic_dialog_email" /> </android.support.design.widget.CoordinatorLayout> 

Проблема заключается в том, что содержимое в content_my.xml выходит за Toolbar AppBarLayout а не под ней. Есть идеи, как решить эту проблему?

Solutions Collecting From Web of "Помещение содержимого ниже AppBarLayout в координаторLayout"

Макеты в CoordinatorLayout должны определять layout_behavior . Измените свой контент на это:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" app:layout_behavior="@string/appbar_scrolling_view_behavior" > <EditText android:id="@+id/edit_message" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" android:hint="@string/edit_message" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button_send" android:onClick="sendMessage"/> </LinearLayout>