2014-10-09 110 views
0

我遇到了对话框消息的问题。直到我想在的EditText上键入信息,键盘弹出Android对话框setMessage

,一切工作正常 - 然后在对话框的消息的第二个(也是最后一次)线被剪断一半..

看起来对话框看起来像

图标名称:


消息行1

消息行2(< - 半与看得到键板)

滚动型与一些edittexts

负按钮|正面按键

编辑:代码

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

正如你所看到的按钮是不可见的,我不知道为什么滚动视图不再滚动 我该如何预防t表示Dialog.set 消息文本是切断显示键盘?

+0

把对话框代码在这里 – Rustam 2014-10-09 07:32:10

+0

我现在所做的添加对话框代码;) – Zuop 2014-10-09 07:55:46

+0

http://stackoverflow.com/questions/7200281/programatically-hide-show-android-soft-keyboard – codePG 2014-10-09 08:04:31

回答

0

加入下一行到你的清单:

机器人:windowSoftInputMode = “adjustResize”

+0

以及我试过,但没有任何变化。 对话框显示在监听器类onClick中,如果有帮助的话。无论如何,滚动视图不再滚动,我不知道为什么我改变了一切回来......现在按钮被切断:D – Zuop 2014-10-09 07:53:45

+0

可以分享屏幕截图吗? – Amy 2014-10-09 07:54:21

+0

你有解决方案吗? – Amy 2014-10-09 07:58:24

0

我相信这些错误大多是在XML中,尝试删除安卓elipsize,也许给layout_width的其他值是0,你可以尝试