待办事项列表示例:错误添加任务(setOnKeyListener)

时间:2011-05-04 07:36:18

标签: java android event-handling

我正在关注Reto Meier的专业Android开发一书,并且有一个ToDo列表的例子,以便练习。 问题在于我按照书中的说法做了所有事情,但是在推动中央键盘时我无法添加任何任务,因为我得到一个异常并且程序必须关闭。 我试图在Eclipse中调试,显然它找不到.class文件(?)

以下是发生所有不良事件的代码,特别是 todoItems.add 行:

myEditText.setOnKeyListener(new OnKeyListener() {
    public boolean onKey(View v, int keyCode, KeyEvent event) {
        if (event.getAction() == KeyEvent.ACTION_DOWN)
            if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
                todoItems.add(0, myEditText.getText().toString());
                myEditText.setText("");
                aa.notifyDataSetChanged();
                return true;
            }
        return false;
    }
});

1 个答案:

答案 0 :(得分:3)

给它一个镜头 - 它使用传入的View v。 我假设“todoItems”已正确实施

myEditText.setOnKeyListener(new View.OnKeyListener()
{
    public boolean onKey(View v, int keyCode, KeyEvent event)
    {
        EditText edittxt = (EditText)v;

        todoItems.add(0, edittxt.getText().toString());

        return false;
    }
});