android - 非 Activity InputConnection 上的 finishComposingText

标签 android android-studio input android-alertdialog

我尝试使用 alertdialog 进行输入,但是当我单击 editText 时,系统将显示“W/IInputConnectionWrapper:finishComposingText on inactive InputConnection”。

test1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            AlertDialog.Builder mBuilder = new AlertDialog.Builder(MainActivity.this);
            View mView = getLayoutInflater().inflate(R.layout.dk, null);
            final AlertDialog dialog = mBuilder.create();
            final EditText day = (EditText) mView.findViewById(R.id.day);
            final EditText month = (EditText) mView.findViewById(R.id.month);
            final EditText year = (EditText) mView.findViewById(R.id.year);
            final Button bu1 = (Button) mView.findViewById(R.id.bu1);


            bu1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
               #code


                 dialog.dismiss();
                }

            });

            dialog.setView(mView);

            dialog.show();

        }
    });

最佳答案

是否有可能将 EditText 包裹在 TextInputLayout 中? 如果是这样,您会在提示文本的动画结束时收到此消息。

这不是真正的问题所在。问题是 onClick 不是第一次触发 EditText View 。 第一次单击用于将焦点设置在 EditText View 上。 第二次单击将触发 onClick 事件,该事件将显示您的对话框。

您可以通过将 EditText 对象的 android:focusableInTouchMode 参数设置为 false 来解决此问题

android:focusableInTouchMode="false"

关于android - 非 Activity InputConnection 上的 finishComposingText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42597918/

相关文章:

java - Android 中的 SSH 和隧道

java - 致命异常 : AsyncTask #1

java - Android 如何加载图像(Glide)并在有人直接点击按钮时显示它

java - 在提示输入后添加文本

android - 一个Android MediaPlayer对象一次播放几种声音

java - Json存储或分离表

css - 持续显示的 HTML5 输入占位符(即使在输入时?)

jquery - JQuery 对话框内包含表单的部分 View 中的输入无响应

java - 更新 MoneyTextView Android Studio

android-studio - Android操作栏不反射(reflect)颜色变化