安卓自定义Listviewadapterdialog隐藏软键盘

3
我面临的情况如下:
在我的对话框编辑文本框上聚焦时,我希望键盘出现在对话框上方。

enter image description here

我在Stack Overflow上查看了很多答案,但都没有解决我的问题。

适配器类中EditText获取焦点的代码。

 edittext.setOnFocusChangeListener(new OnFocusChangeListener() {

    public void onFocusChange (View v,boolean hasFocus){
        edittext.post(new Runnable() {

            public void run() {
                InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
            }
        });
LayoutInflater li = LayoutInflater.from(context);
            View promptsView = li.inflate(R.layout.custom_dialog, null);
            AlertDialog.Builder builder = new AlertDialog.Builder(context);
            builder.setView(promptsView);
            builder.setTitle(" Please select size");

            listView = (ListView) promptsView.findViewById(R.id.listt);
            dataAdapter = new MyCustomAdapter(context, R.layout.size_info,
                    sizePojoList, active);
            listView.setAdapter(dataAdapter);
            listView.setDescendantFocusability(ViewGroup.FOCUS_AFTER_DESCENDANTS);
            listView.setItemsCanFocus(true);

你能发一些你尝试过的代码吗? - Ronak Thakkar
发布一些代码实现或您的布局。 - Kartik Shandilya
对话框打开之前,键盘是否已经打开? - Haresh Chhelana
@HareshChhelana 不,只有在焦点集中时键盘才会打开。 - Rose
@NovoLucas 请检查已编辑的问题 - Rose
@RonakThakkar 检查编辑后的问题 - Rose
1个回答

0

尝试:

dialog.getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);

<activity android:windowSoftInputMode="adjustResize"> </activity> - Shmuel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接