2016-11-02 4 views
0

В моем приложении я использую Activity с темой «Theme.AppCompat.Dialog», чтобы отобразить его как диалог. Это хорошо работает, однако диалог заполняет всю высоту экрана, оставляя много свободного места. Для того, чтобы проиллюстрировать мою проблему, здесь картина открытия диалогового окна (на необычно высоком разрешении, чтобы продемонстрировать проблему лучше):Theme.AppCompat.Dialog theme создает пустое (мертвое) пространство

enter image description here

Чем выше разрешение, тем больше это пространство.

Вот фрагмент кода:

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    xmlns:tools="http://schemas.android.com/tools"> 

    <!--This is the yellow box--> 
    <LinearLayout 
     android:id="@+id/dialog_button_bar" 
     android:layout_alignParentBottom="true" 
     style="?android:buttonBarStyle" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
     [Buttons...] 
    </LinearLayout> 

    <!--This is the red box--> 
    <ScrollView 
     android:layout_above="@id/dialog_button_bar" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
     [LinearLayout containing rows...] 
    </ScrollView> 

Если я удалить android:layout_alignParentBottom="true" и android:layout_above="@id/dialog_button_bar" атрибутов, вся раскладка подскакивает к вершине, а теперь пустое пространство ниже моему макета.

Что я делаю неправильно? :(

ответ

1

Похоже, это это стандартное диалоговое окно установки Android-приложений, похоже, ведет себя одинаково (оставляя много свободного пространства между частью разрешения и кнопками), поэтому я думаю, что я сохраню это так ...

0

Создание нового стиля в styles.xml

<style name="MyCustomDialog" parent="Base.Theme.AppCompat.Light.Dialog"> 
    <item name="android:windowNoTitle">true</item> 
    <item name="windowActionBar">false</item> 
</style> 

Сейчас в AndroidManifest.xml, добавить андроид:. Тема = "@ стиль/MyCustomDialog" в диалоговом деятельности

+0

не помогло :( – Aenadon

 Смежные вопросы

  • Нет связанных вопросов^_^