0

我正在尝试创建一个自定义对话框,但它既使它与屏幕一样宽(减去填充),但更重要的是它在第一个文本视图上方的白色顶部增加了大约一英寸(背景颜色为红色)。我想要的是一个与填充内容一样大的对话框。

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

我究竟做错了什么?

在此处输入图像描述

<?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" />

4

2 回答 2

0

对话框对话框=新对话框(上下文,R.style.FullHeightDialog);(或试试这个)getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);

于 2014-03-14T05:23:31.357 回答
0

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

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

啊,谢谢你的更新。 Android 对话框:删除标题栏

你可以这样做

于 2013-09-20T15:19:27.627 回答