Android Dialog setMessage

时间:2014-10-09 07:30:29

标签: android android-layout alertdialog

我遇到了对话消息的问题。

一切正常,直到我想在edittext中键入信息并弹出键盘 - 然后对话框消息的第二行(和最后一行)被剪切为一半..

看起来像对话框

图标和标题:


消息第1行

消息行2(&lt; - 带键盘的一半可见)<​​/ p>

带有一些edittexts的ScrollView

否定按钮|正面按钮

编辑:代码

LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(mContext.LAYOUT_INFLATER_SERVICE);
            View viewGroup = inflater.inflate(R.layout.layout_dialog_daily_report, null);
            ScrollView layout = (ScrollView) viewGroup.findViewById(R.id.dialog_parent);
            final EditText 1 = (EditText) viewGroup.findViewById(R.id.dialog_1);
            final EditText 2 = (EditText) viewGroup.findViewById(R.id.dialog_2);
            final EditText 3 = (EditText) viewGroup.findViewById(R.id.dialog_3);
            final EditText 4 = (EditText) viewGroup.findViewById(R.id.dialog_4);

            AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
            builder.setIcon(R.drawable.icon);
            builder.setTitle(R.string.dialog_title);
            builder.setMessage(R.string.dialog_message);
            builder.setView(layout);
            builder.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                }
            });

            builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                }
            });
            AlertDialog dialog = builder.create();
            dialog.getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_VISIBLE);
            dialog.show();

布局:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/dialog_parent"
android:margin="7dp"
android:layout_width="match_parent"
android:layout_height="match_parent" >

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

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.6"
            android:ellipsize="end"
            android:text="@string/dialog_1" />

        <EditText
            android:id="@+id/dialog_1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.4" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.6"
            android:ellipsize="end"
            android:text="@string/dialog_2" />

        <EditText
            android:id="@+id/dialog_2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.4" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.6"
            android:ellipsize="end"
            android:text="@string/dialog_3" />

        <EditText
            android:id="@+id/dialog_3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.4" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.6"
            android:ellipsize="end"
            android:text="@string/dialog_4" />

        <EditText
            android:id="@+id/dialog_4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.4" />
    </LinearLayout>
</LinearLayout>

enter image description here

正如您所看到的那些按钮不可见,我不知道为什么scrollview不再可滚动 如何在显示键盘时阻止Dialog.set 消息文本切断

2 个答案:

答案 0 :(得分:0)

在你的Manifest中添加下一行:

<强>机器人:windowSoftInputMode =&#34; adjustResize&#34;

答案 1 :(得分:0)

我相信错误主要是在xml中,尝试删除android:ellipsize,也许给出layout_width是0以外的值,你可以试试