Я знаю, что есть тысячи вопросов по этому поводу, но я пролистал их, и ни одно из их решений не работает для меня.
Моя деятельность имеет интерфейс с вкладками с таким типом макета:
<RelativeLayout>
<LinearLayout tabBar>
<Button tab1 />
<Button tab2 />
<Button tab3 />
<Button tab4 />
</LinearLayout>
<ViewFlipper>
<fragment Tab1 />
<fragment Tab2 />
<fragment Tab3 />
<fragment Tab4 />
</ViewFlipper>
</RelativeLayout>
При нажатии кнопки tab2 в LinearLayout я меняю ViewFlipper для отображения дочернего элемента 2, который управляется Tab2Fragment.
Макет Tab2Fragment выглядит следующим образом:
<FrameLayout>
<ListView/>
</FrameLayout>
Когда элемент в ListView выбран, я создаю новый фрагмент, давайте назовем его Sub2Fragment и добавлю его в качестве дочернего элемента к FrameLayout.
Sub2Fragment имеет такой макет:
<LinearLayout android:layout_height="fill_parent" android:layout_width="fill_parent">
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<Button />
</LinearLayout>
Когда отображается программная клавиатура, она покрывает некоторые из моих EditTexts и мою кнопку.Я также попытался обернуть этот LinearLayout с помощью ScrollView:
<ScrollView android:layout_height="fill_parent" android:layout_width="fill_parent">
<LinearLayout android:layout_height="wrap_content" android:layout_width="fill_parent">
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<LinearLayout> <TextView /> <EditText /> </LinearLayout>
<Button />
</LinearLayout>
</ScrollView>
Я также попробовал мой манифест с и без android:windowSoftInputMode="adjustResize"
в своей Деятельности, но ничего, что я пробую, не заставляет представление автоматически изменять размер, так чточто ScrollView позволит мне прокручивать весь контент, когда программная клавиатура видна.
Я также пытался обернуть все действия в ScrollView, но это испортило весь мой макет, потому что он основан на заполнении всего экранаsize и ScrollView отключают дочерний макет от фактического размера экрана ...
Любая помощь?