2017-01-06 14 views
0

Мне нужно было создать собственное представление заголовка, чтобы показывать сообщение и заголовок, когда появляется список. Поскольку список отображается в области содержимого диалогового окна. Таким образом, диалог не может отображать как сообщение, так и список.Использовать стиль текста заголовка по умолчанию для настройки текста заголовка для AlertDialogs

Мой заказ вид является LinearLayout:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:orientation="vertical" 
       android:padding="24dp" 
       android:paddingBottom="20dp" 
       style="@style/Base.Theme.AppCompat.Dialog.Alert" 
    > 

    <TextView 
     android:id="@+id/alert_dialog_custom_title_textView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="20dp" 
     android:textSize="20sp" 
     android:textStyle="bold" 
     /> 

    <TextView 
     android:id="@+id/alert_dialog_custom_message_textView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textSize="14sp"/> 
</LinearLayout> 

Заполнения значения и размер текста был дан в соответствии с информацией, приведенной material design guidelines

enter image description here

Однако этот вид отличается от по умолчанию.

screenshots

мой вопрос:

  • Как я могу создать TextView, который имеет тот же стиль с по умолчанию один?

Может быть, есть способ, как установка стиля к моему TextView

Edit: Я просто хочу, чтобы установить атрибут стиля, что делает его визуальность же, как по умолчанию AlertDialog.

Мой TextView уже так:

<TextView 
     android:id="@+id/alert_dialog_custom_title_textView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="messsage" 
     android:layout_marginBottom="20dp" 
     android:textSize="20sp" 
     android:textStyle="bold" 
     /> 

Я хочу, чтобы сделать это так же, как это:

<TextView 
     android:id="@+id/alert_dialog_custom_title_textView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="messsage" 
     style="?android:attr/titleTextStyle" 
     /> 
+0

android предоставляет размеры для текста, который вы можете использовать. –

ответ

0

В вашем стиле вы можете использовать этот

<style name="TextAppearance.AlertDialogPro" parent="android:TextAppearance" /> 

для вас textview вы можете добавить стиль

<TextView 
     android:id="@+id/alert_dialog_custom_title_textView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="messsage" 
     style="@style/TextAppearance.AlertDialogPro" 
     android:layout_marginBottom="20dp" 
     android:textSize="20sp" 
     android:textStyle="bold" 
     /> 
+0

Извините за мой поздний ответ. Но это не ответ. Поскольку вы можете видеть мой вопрос, я уже могу установить атрибуты textview. Это не то, что я хочу. Я просто хочу установить атрибут стиля, который делает его визуальность такой же, как и AlertDialog по умолчанию. – ziLk

+0

android: textAppearanceMedium также «18sp», который не является правильным значением по умолчанию AlertDialog – ziLk

+0

Я обновил свой код, вы можете попробовать, что он будет работать на вас. –