2

我有一个活动课。对于这个 Activity 类,我有一个 XML 布局。我想将此活动类显示为对话框,因此要在清单中执行以下更改。

 <activity
    android:name=".AlarmDialogActivity"
    android:theme="@android:style/Theme.Dialog">            
 </activity> 

当我运行我的应用程序时,活动类显示为对话框,但宽度被压缩,它不会占据设备的全屏。为什么会这样?谁能帮我解决这个问题?

xml布局代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layout_alarm_dialog"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#E0D5B1"
    android:gravity="center_vertical|center_horizontal"
    android:orientation="vertical" >

        <TextView
            android:id="@+id/dialog_title_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="@string/dialog_title_text"
            android:textColor="#e89192"
            android:textSize="18dp" >
        </TextView>

        <ListView
            android:id="@+id/alarm_list_view"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="15dp"
            android:layout_marginTop="10dp"
            android:cacheColorHint="#00000000"
            android:divider="@null"
            android:dividerHeight="0dp"
            android:listSelector="#00000000" >
        </ListView>

    <LinearLayout
        android:id="@+id/bottom_control_bar"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:gravity="center_horizontal|center_vertical" >

        <Button
            android:id="@+id/button_dismiss"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/button_dismiss_text"
            android:textColor="#121212"
            android:textSize="18dp" >
        </Button>
    </LinearLayout>

</LinearLayout>

对话框截图

在此处输入图像描述

4

4 回答 4

2

通过以下方式更改您的 xml 布局文件:

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


    <Button 
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="xxxxxxxx"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:textColor="#121212"
            android:textSize="18dp"/>

    <TextView 
        android:id="@+id/txt"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="xxxxxxxxxxxx"
        android:textColor="#e89192"
        android:textSize="18dp"
        android:gravity="center"/>

    <ListView 
        android:id="@+id/list"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/txt"
        android:layout_above="@+id/btn"/>


</RelativeLayout>

添加您想要添加到布局的任何样式。

在活动的 setcontentview 之前添加以下行:

requestWindowFeature(Window.FEATURE_NO_TITLE);

这在您的活动下的清单文件中:

 android:theme="@android:style/Theme.Dialog"
于 2012-07-11T08:11:41.530 回答
0

试试这个:

<TextView
    android:id="@+id/dialog_title_text"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:text="@string/dialog_title_text"
    android:textColor="#e89192"
    android:textSize="18dp" >
</TextView>
于 2012-07-11T07:28:44.503 回答
0

在活动类文件中试试这个:

WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
lp.copyFrom(dialogPost.getWindow().getAttributes());                      
lp.gravity = Gravity.CENTER;
lp.width = WindowManager.LayoutParams.FILL_PARENT;
dialogPost.getWindow().setAttributes(lp);  
dialogPost.show();

dialogPost一个在哪里DialogBox。您可以使用 更改您的视图dialogPost

于 2012-07-11T07:39:16.497 回答
0

android:layout_width="fill_parent在您的 TextView 中尝试。它对我有用。

于 2012-07-11T08:03:28.077 回答