从XML扩展AlertDialog的宽度/高度错误

时间:2011-02-03 19:01:23

标签: android layout android-alertdialog

我在使用自定义XML扩展AlertDialog时遇到问题。问题是它不符合我指定的宽度/高度。

volume.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:paddingLeft="6dp" android:gravity="center"
    android:layout_gravity="center_horizontal" android:orientation="vertical"
    android:layout_height="wrap_content" android:layout_width="250dip"
    android:id="@+id/layoutRoot">
    <TextView android:layout_width="wrap_content"
        android:layout_gravity="left" android:id="@+id/textView1"
        android:layout_height="wrap_content" android:text="Volume:"
        android:layout_marginBottom="10dp" android:textSize="22dp"
        android:layout_marginTop="10dp"></TextView>
    <SeekBar android:layout_height="wrap_content"
        android:layout_width="fill_parent" android:id="@+id/volumeBar"
        android:minHeight="10dp" android:maxHeight="15dp" android:paddingLeft="10dp"></SeekBar>
    <TextView android:layout_width="wrap_content"
        android:layout_gravity="left" android:layout_height="wrap_content"
        android:layout_marginBottom="10dp" android:textSize="22dp"
        android:text="20%" android:id="@+id/volumeText"></TextView>
</LinearLayout>

代码:

    Builder alertbox = new AlertDialog.Builder(this);
    AlertDialog alertDialog;

    LayoutInflater mInflater = (LayoutInflater) this
    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    View VolumeView = mInflater.inflate(
            R.layout.volume, (ViewGroup) findViewById(R.id.layoutRoot));
    alertbox.setView(VolumeView);
    alertDialog = alertbox.create();
    alertDialog.show();

1 个答案:

答案 0 :(得分:0)

您的问题可能是您提供layoutRoot作为mInflater.inflate()电话的第二个参数。这将影响正在膨胀的XML文件的布局。

您的问题需要更多信息,以便任何人提供更好的答案。