我遇到了对话消息的问题。
一切正常,直到我想在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>
正如您所看到的那些按钮不可见,我不知道为什么scrollview不再可滚动 如何在显示键盘时阻止Dialog.set 消息文本切断?
答案 0 :(得分:0)
在你的Manifest中添加下一行:
<强>机器人:windowSoftInputMode =&#34; adjustResize&#34; 强>
答案 1 :(得分:0)
我相信错误主要是在xml中,尝试删除android:ellipsize,也许给出layout_width是0以外的值,你可以试试