弹出窗口InputEventReceiver错误 - Android

时间:2015-07-16 08:50:40

标签: java android popupwindow hint

我不喜欢错误。我使用弹出窗口在TextView上方显示一些提示。该提示用于解释TextView所说的内容,例如RBI,将弹出一个提示,说明"运行在"每次我点击弹出提示之外的时候我都会收到此错误W/InputEventReceiver﹕ Attempted to finish an input event but the input event receiver has already been disposed.以删除弹出窗口,这就是我希望它设置的方式,我得到了这个错误。我已经尝试将输入设置为INPUT_METHOD_NOT_NEEDED而没有

我有多个提示要显示,所以我将所有内容放在TextView数组中 我在每个TextView项目上都有一个监听器

运行弹出窗口的方法

public void displayPopupWindow(View anchorView, String text) {
    final PopupWindow popup = new PopupWindow(getApplicationContext());
    View layout = getLayoutInflater().inflate(R.layout.test_popup, null);
    ((TextView) layout.findViewById(R.id.popup_text)).setText(text);
    popup.setContentView(layout);
    // Set content width and height
    popup.setHeight(WindowManager.LayoutParams.WRAP_CONTENT);
    popup.setWidth(WindowManager.LayoutParams.WRAP_CONTENT);
    // Closes the popup window when touch outside of it - when looses focus
    popup.setOutsideTouchable(true);
    popup.setTouchable(false);
    popup.setInputMethodMode(PopupWindow.INPUT_METHOD_NOT_NEEDED);
    // Show anchored to button
    popup.setBackgroundDrawable(new BitmapDrawable());
    popup.showAsDropDown(anchorView, 0, -225);
}

我创建了一个监听器

View.OnClickListener listener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String text = "";
            ...
            //a bunch of code that just decides what the variable text should be
            ...
            displayPopupWindow(v, text);
        }
    };

并将TextViews侦听器数组设置为侦听器对象

//inside a for loop
TextViews[i].setOnClickListener(listener);

任何人都知道要摆脱那个错误。我不希望logcat填补这些错误。任何人有任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果您在Google上搜索

,则您的错误是常见错误

你必须用处理程序调用displaypopup方法。

您可以找到更多帮助herehere

希望我帮助你