Фрагмент Android, увеличенный из ресурса макета, показывает дополнительную полосу вверху

Я пытаюсь создать диалоговое окно ошибки подключения к Интернету. У меня есть код dialogFragment, который раздувает макет. Проблема в том, что макет выглядит нормально в студии Android, но на телефоне он отображается с дополнительной горизонтальной полосой вверху. Снимок диалогового окна на телефоне

Привязка диалогового окна в Android Studio

Это код макета:

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="match_parent"
style="@style/Animation.AppCompat.Dialog">


<TextView
    android:text="TextView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/textView"
    android:layout_weight="1" />

<RadioButton
    android:text="RadioButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/radioButton"
    android:layout_weight="1" />
</LinearLayout>

Может ли кто-нибудь помочь мне понять, почему я получаю эту дополнительную полосу. Пробовал ставить CardView и другие лейауты вместо LinearLayout, но полоска как будто выходит за рамки файла лейаута. Я не могу получить к нему доступ или изменить его.


person Rajan Prasad    schedule 25.10.2016    source источник
comment
Это было бы полезно   -  person Rishabh Dutt Sharma    schedule 25.10.2016
comment
@RishabhDuttSharma Это очень помогло. Боже, поначалу библиотеки могут быть болезненными.   -  person Rajan Prasad    schedule 25.10.2016


Ответы (1)


DialogFragment имеет разделитель по умолчанию сверху. Вы можете удалить разделитель с помощью следующего кода -

intdividerID = dialog.getContext().getResources().getIdentifier("android:id/titleDivider", "id", "android"); Разделитель представления = dialog.findViewById(dividerID); Затем вы можете установить высоту 0 или прозрачный цвет для представления.

person Harsh    schedule 25.10.2016