无法让android自定义对话框正确调整大小

时间:2013-09-19 21:26:39

标签: android-layout

我正在尝试创建一个自定义对话框,但它同时使它像屏幕一样宽(减去填充)但更重要的是它在第一个上方添加了大约一英寸的白色(背景颜色为红色) TextView中。我想要的是一个与填充内容一样大的对话框。

如果我将任何布局从fill_parent更改为wrap_content,我会得到有关图像大小的内容,其他所有内容(即文本)都会被截断。

我做错了什么?

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/customdialog"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/titledialog"
android:orientation="vertical" >

<TextView
    android:id="@+id/textTitle"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@color/titleback"
    android:gravity="center"
    android:text="Large Text"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="@color/title" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="15dp" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:paddingBottom="24dp"
        android:paddingTop="48dp"
        android:src="@drawable/ic_launcher" />

    <TextView
        android:id="@+id/textContent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:gravity="center"
        android:text="TextView" />

</LinearLayout>

<Button
    android:id="@+id/buttonCustomDialogOk"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:text="Close" />

2 个答案:

答案 0 :(得分:0)

我在这里找到了答案 Android: How to create a Dialog without a title?

显然,顶部的空白位是布局的标题,除非你使用AlertDialog而不是Dialog,否则你无法摆脱它。

啊,谢谢你的更新。 Android Dialog: Removing title bar

你可以这样做

答案 1 :(得分:0)

Dialog dialog = new Dialog(context,R.style.FullHeightDialog); (或尝试这个) getDialog()getWindow()requestFeature(Window.FEATURE_NO_TITLE);