如何向对话框添加布局

lam*_*ard 4 android android-widget android-layout android-dialog

我有一个想法但我不确定如何实现它

首先,我有一个对话框

final Dialog dialog = new Dialog(mContext);
Run Code Online (Sandbox Code Playgroud)

我也有一个布局

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textViewTitle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:gravity="center_horizontal"
        android:text="Large Text"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <TextView
        android:id="@+id/textViewDescription"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:gravity="center_horizontal"
        android:text="Small Text"
        android:textAppearance="?android:attr/textAppearanceSmall" />

    <TextView
        android:id="@+id/textViewWhen"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:gravity="center_horizontal"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我想要的是在对话框中添加此布局,我可能还想在该对话框中添加更多相同的布局,我该怎么做?

例如,如何在一个对话框中添加两个此布局?就像是


  Dialog Title

   Large Text
   Small Text
   Medium Text


   Large Text
   Small Text
   Medium Text
Run Code Online (Sandbox Code Playgroud)

Dmy*_*nko 7

像这样的东西:

LayoutInflater li = LayoutInflater.from(SomeActivity.this);
someLayout = (LinearLayout)li.inflate(R.layout.some_layout, null);

alert = new AlertDialog.Builder(SettingsActivity.this);
alert.setView(someLayout);
Run Code Online (Sandbox Code Playgroud)


Aer*_*lys 2

您可以查看此文档页面,其中解释了如何在对话框上添加自定义布局

http://developer.android.com/guide/topics/ui/dialogs.html#CustomDialog

关键是setContentView方法:

dialog.setContentView(R.layout.custom_dialog);
Run Code Online (Sandbox Code Playgroud)