1

Я пытаюсь создать диалоговое окно ошибки подключения к Интернету. У меня есть код dialogFragment для него, который раздувает макет. Проблема в том, что макет выглядит отлично в студии Android, но по телефону он появляется с дополнительной горизонтальной полосой вверху. The snapshot of the dialog box on the phoneФрагмент Android, завышенный от ресурса макета, показывающий дополнительную полосу вверху

The snap of the dialog box in 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, но полоса кажется чем-то вне файла макета. Я не могу получить доступ или изменить его.

+1

[Это было бы полезно] (http://stackoverflow.com/a/15279400/6213557) –

+0

@RishabhDuttSharma Это очень помогло. Бог, библиотеки могут быть болезненными в начале. –

ответ

1

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

int dividerID = dialog.getContext(). GetResources(). GetIdentifier ("android: id/titleDivider", "id", "android"); Просмотреть divider = dialog.findViewById (dividerID); Затем вы можете установить высоту в 0 или прозрачный цвет.