Добавление без полей кнопок в Android xml с разделителем

Я пытаюсь следовать рекомендациям, изложенным командой Android из этого документа:

https://docs.google.com/file/d/0Bz3qX4EBhUvwZWlHekI3Y0wxSUk/edit

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

Это мой код, но ни одна из границ не показывает. Есть идеи?

<LinearLayout android:id="@+id/buttonLayout" style="?android:buttonBarButtonStyle" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:divider="?android:dividerVertical" android:orientation="horizontal" android:showDividers="middle" > <Button android:id="@+id/button1" style="?android:buttonBarButtonStyle" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="Test" /> <Button android:id="@+id/button2" style="?android:buttonBarButtonStyle" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:text="Test" /> </LinearLayout> 

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

У вас неправильный стиль в LinearLayout. Должен быть

 style="?android:buttonBarStyle" 

Не…

 style="?android:buttonBarButtonStyle" 

Пример:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/buttonLayout" style="?android:attr/buttonBarStyle" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <Button android:id="@+id/button1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Test"/> <TextView android:layout_height="wrap_content" android:text="TextView (Place Holder)" android:textAppearance="?android:attr/textAppearanceLarge" android:layout_width="wrap_content" android:layout_gravity="center" android:layout_margin="15dp"/> <LinearLayout style="?android:attr/buttonBarStyle" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <Button android:id="@+id/button2" style="?android:attr/buttonBarButtonStyle" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="Test"/> <Button android:id="@+id/button3" style="?android:attr/buttonBarButtonStyle" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="Test"/> </LinearLayout> </LinearLayout> 

Пример 2 (ListView):

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/buttonLayout" style="?android:attr/buttonBarStyle" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ListView android:layout_height="wrap_content" android:layout_width="match_parent" android:layout_weight="1.0"/> <LinearLayout style="?android:attr/buttonBarStyle" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <Button android:id="@+id/button2" style="?android:attr/buttonBarButtonStyle" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="Test"/> <Button android:id="@+id/button3" style="?android:attr/buttonBarButtonStyle" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="Test"/> </LinearLayout> </LinearLayout> 

Верхняя граница – это «разделитель», который разделяет элементы в линейном макете. Если панель кнопок находится в нижней части вертикальной компоновки, вам нужно активировать отображение разделителя в вертикальной компоновке. Как правило, я делаю это, добавляя эти атрибуты:

 android:showDividers="middle" android:divider="?android:dividerHorizontal" android:dividerPadding="8dp" 

Полный код макета:

 <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:divider="?android:dividerHorizontal" android:dividerPadding="8dp" android:orientation="vertical" android:showDividers="middle" > <TextView android:id="@+id/url" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="8dp" android:text="dummyText" /> <LinearLayout style="?android:buttonBarStyle" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:id="@+id/button1" style="?android:buttonBarButtonStyle" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="Button1" /> <Button android:id="@+id/button2" style="?android:buttonBarButtonStyle" android:layout_width="0dip" android:layout_height="wrap_content" android:layout_weight="1" android:text="Button2" /> </LinearLayout> </LinearLayout> 

Я столкнулся с той же проблемой, что и в документе. Решение, предоставленное user3055552, даст средний разделитель, но не верхний делитель, если на кнопках нет других видов. Пытаться:

 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:orientation="vertical"> <View android:layout_width="match_parent" android:layout_height="1dp" android:background="?android:attr/dividerVertical"/> <LinearLayout style="?android:buttonBarStyle" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content"> <Button style="?android:buttonBarButtonStyle" android:id="@+id/back" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:text="@string/back"/> <Button style="?android:buttonBarButtonStyle" android:id="@+id/next" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:text="@string/next"/> </LinearLayout> </LinearLayout> 1 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:orientation="vertical"> <View android:layout_width="match_parent" android:layout_height="1dp" android:background="?android:attr/dividerVertical"/> <LinearLayout style="?android:buttonBarStyle" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="wrap_content"> <Button style="?android:buttonBarButtonStyle" android:id="@+id/back" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:text="@string/back"/> <Button style="?android:buttonBarButtonStyle" android:id="@+id/next" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" android:text="@string/next"/> </LinearLayout> </LinearLayout> 

предварительный просмотр Введите описание изображения здесь

Вы можете создать это, не используя кнопку с цветом.

 <LinearLayout android:id="@+id/bottom_bar" android:layout_width="match_parent" android:layout_height="48dp" android:layout_alignParentBottom="true" android:background="#2B1B17" > <TextView android:id="@+id/tv_cancel" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="Cancel" android:textColor="@drawable/text_changepassword_selector" android:textSize="19sp" /> <View style="@style/Divider" android:layout_marginBottom="5dp" android:layout_marginTop="5dp" /> <TextView android:id="@+id/tv_apply" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="Select" android:textColor="@drawable/text_changepassword_selector" android:textSize="19sp" /> </LinearLayout> 
Intereting Posts