使用对话框解决Android布局问题

使用对话框解决Android布局问题,android,android-layout,android-dialog,android-dialogfragment,Android,Android Layout,Android Dialog,Android Dialogfragment,我正在为平板电脑开发一个android应用程序。我实现了一个如下所示的DialogFragment: xml布局由以下代码定义: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_he

我正在为平板电脑开发一个android应用程序。我实现了一个如下所示的DialogFragment:

xml布局由以下代码定义:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="#F7F7F7" >

     <LinearLayout 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_alignParentTop="true">
        <EditText
            android:id="@+id/destinatario_messaggio"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="10dp"
            android:inputType="text"
            android:hint="Destinatario del messaggio"
            android:textColor="#000000"
            android:textSize="24dp"/>
    </LinearLayout>

    <LinearLayout 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_alignParentBottom="true"
        android:background="#FFFFFF">
        <View android:layout_width="fill_parent"
            android:layout_height="1dip"
            android:background="#888888" />
        <EditText
            android:id="@+id/body_messaggio"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginTop="20dp"
            android:inputType="textMultiLine"
            android:text=""
            android:hint="Scrivi Messaggio"
            android:textColor="#000000"
            android:textSize="24dp"
            android:maxLines="5"/>      
    </LinearLayout>
</RelativeLayout>

我有两个问题:

1-由于我使用的是平板电脑,我希望对话框左侧和右侧的所有可用空间都由对话框本身填充。即使我在根视图中设置了以下内容:

android:layout\u width=“匹配父项”

我的对话框浮动在活动的中心,在它的左侧和右侧都有大量的可用空间。 我的对话框如何占据设备中的所有可用宽度


2-当键盘(IME)出现用于编辑
EditText
字段时,我的对话框会在隐藏对话框顶部时插入(标题和第一个文本视图将不可见)。相反,我想要的是对话框的顶部保持在顶部,对话框的中心是“compressd”。我的布局似乎无法适应新的可用空间。

对于第一部分,请使用宽度填充对话框

dialog.getWindow().getAttributes().width = LayoutParams.FILL_PARENT;

android:WindowsOfInputMode=“adjustPan”尝试此操作,或针对第二个问题调整大小,或getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT\u INPUT\u STATE\u ALWAYS\u HIDDEN);不要总是隐藏属性,改为AdjustPane,在这里我可以指定android:WindowsOfInputMode=“adjustPan”?我没有提到你在任何地方使用过它,先生,我只是说试试。虽然它通常是一个清单标记,但当软键盘openssory@Dhara my question不正确时,请使用代码调整窗口。我在问你我可以把那一行放在哪里。如果你正在使用一个活动,你可以把它放在android清单文件的活动标签中。否则,在调用对话框时,就在创建视图或分配视图时,编写dialog.getWindow().setSof。。。代码