【问题标题】:How to reduce the activity dialog height in android如何减少android中的活动对话框高度
【发布时间】:2013-10-03 12:35:46
【问题描述】:

我正在使用样式为 android:theme="@android:style/Theme.Dialog" 的活动。活动显示为对话框,但问题是降低对话框的高度到指定级别..

请给我一个解决方案??????

这是我的活动对话框 XML 代码

<?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:background="@drawable/bg"
    android:orientation="vertical" 
   style="@style/MyActionsDialogTheme">

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:background="@drawable/custom_title"
        android:gravity="center_vertical" >

        <RelativeLayout
            android:id="@+id/relativeLayout2"
            android:layout_width="match_parent"
            android:layout_height="40dp"
            android:layout_marginBottom="5dp"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="5dp"
            android:gravity="center_vertical" >

            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true"
                android:gravity="center_vertical"
                android:text="Quick Actions"
                android:textColor="#ffffff"
                android:textSize="18dp"
                android:textStyle="bold|italic"
                android:typeface="serif" />
        </RelativeLayout>
    </RelativeLayout>

    <TextView
        android:id="@+id/tv_edit"
           android:layout_gravity="center_horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="20dp"
        android:text="Edit Reminder"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="#000000"
        android:textStyle="bold|italic"
        android:typeface="serif" />

    <TextView
        android:id="@+id/tv_delete"
        android:layout_gravity="center_horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:text="Delete Reminder"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="#000000"
        android:textStyle="bold|italic"
        android:typeface="serif" />

    <Button
        android:id="@+id/btn_cancel"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:background="@drawable/custom_button"
        android:text="Cancel"
        android:textColor="#ffffff"
        android:textStyle="bold|italic"
        android:typeface="serif" />

</LinearLayout>

【问题讨论】:

  • 发布你的布局代码
  • @GrIsHu 我刚刚发布了我的布局代码
  • 你想硬编码吗?
  • 如果您使用的是自定义样式,请为其指定高度......

标签: android


【解决方案1】:

试试这个.. 将对话框主布局高度设为wrap_content

如果你给match_parent意味着它会填满父布局所以给wrap_content

<RelativeLayout
    android:id="@+id/relativeLayout1"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:background="@drawable/custom_title"
    android:gravity="center_vertical" >

    <RelativeLayout
        android:id="@+id/relativeLayout2"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="5dp"
        android:gravity="center_vertical" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:gravity="center_vertical"
            android:text="Quick Actions"
            android:textColor="#ffffff"
            android:textSize="18dp"
            android:textStyle="bold|italic"
            android:typeface="serif" />
    </RelativeLayout>
</RelativeLayout>

<TextView
    android:id="@+id/tv_edit"
       android:layout_gravity="center_horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="20dp"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:layout_marginTop="20dp"
    android:text="Edit Reminder"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#000000"
    android:textStyle="bold|italic"
    android:typeface="serif" />

<TextView
    android:id="@+id/tv_delete"
    android:layout_gravity="center_horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="20dp"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:text="Delete Reminder"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#000000"
    android:textStyle="bold|italic"
    android:typeface="serif" />

<Button
    android:id="@+id/btn_cancel"
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:background="@drawable/custom_button"
    android:text="Cancel"
    android:textColor="#ffffff"
    android:textStyle="bold|italic"
    android:typeface="serif" />

【讨论】:

  • @Android_kalai 该背景图像是为此提供小图像或提供任何颜色并检查的原因..
【解决方案2】:

试试这个

<?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="wrap_content"
        android:background="@drawable/bg"
        android:orientation="vertical" 
       style="@style/MyActionsDialogTheme">

        <RelativeLayout
            android:id="@+id/relativeLayout1"
            android:layout_width="match_parent"
            android:layout_height="40dp"
            android:background="@drawable/custom_title"
            android:gravity="center_vertical" >

            <RelativeLayout
                android:id="@+id/relativeLayout2"
                android:layout_width="match_parent"
                android:layout_height="40dp"
                android:layout_marginBottom="5dp"
                android:layout_marginLeft="10dp"
                android:layout_marginRight="10dp"
                android:layout_marginTop="5dp"
                android:gravity="center_vertical" >

                <TextView
                    android:id="@+id/textView1"
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent"
                    android:layout_alignParentTop="true"
                    android:layout_centerHorizontal="true"
                    android:gravity="center_vertical"
                    android:text="Quick Actions"
                    android:textColor="#ffffff"
                    android:textSize="18dp"
                    android:textStyle="bold|italic"
                    android:typeface="serif" />
            </RelativeLayout>
        </RelativeLayout>

        <TextView
            android:id="@+id/tv_edit"
               android:layout_gravity="center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="20dp"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="20dp"
            android:text="Edit Reminder"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="#000000"
            android:textStyle="bold|italic"
            android:typeface="serif" />

        <TextView
            android:id="@+id/tv_delete"
            android:layout_gravity="center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="20dp"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:text="Delete Reminder"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="#000000"
            android:textStyle="bold|italic"
            android:typeface="serif" />

        <Button
            android:id="@+id/btn_cancel"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:background="@drawable/custom_button"
            android:text="Cancel"
            android:textColor="#ffffff"
            android:textStyle="bold|italic"
            android:typeface="serif" />

    </LinearLayout>

【讨论】:

    【解决方案3】:

    在 LinearLayout 中使用 wrap Content 代替 matchparent

    【讨论】:

    • 然后删除背景图片并尝试让我知道
    【解决方案4】:

    只要缩小背景图片就可以了

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多