В этом определении макета что-то должно быть. В настоящее время как FrameLayout
для содержимого вкладки, так и LinearLayout
под ней просят заполнить оставшуюся высоту экрана `android: layout_height =" fill_parent ".
Чтобы сделать то, что вы ожидаете, вам нужно определить "панель действий" LinearLayout
, чтобы обернуть ее содержимое по вертикали, и указать FrameLayout
просто заполнить доступное пространство между вкладками и этой нижней панелью. Мы делаем это, добавляя весовой параметр. Я изменил ваш внутренний макет ниже с помощью этих двух вещей:
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:padding="5dp" />
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:baselineAligned="false">
<Button android:text="Add"
android:layout_height="wrap_content"
android:layout_width="wrap_content" />
<ToggleButton android:text="Aus"
android:layout_height="wrap_content"
android:layout_width="wrap_content" />
</LinearLayout>
</LinearLayout>
Надеюсь, что поможет!