新编程,现在到android。所以我希望我不要惹恼你。
如何在应用程序的顶层设置onkeylistener,无论如何都能捕获关键事件。
基本上我所拥有的是具有动态添加的edittexts的线性布局。 我想捕获Enter键事件并让它获取当前的edittext,执行一些测试然后创建一个新的edittext并将其添加到布局中。
我知道我可以(并且已经)为各个子视图实现onkeylistener,但不是程序员,创建一个edittext来监听输入以创建另一个监听输入以创建另一个的edittext时,逻辑似乎很奇怪。 ..(你知道这是怎么回事)
有人能指出我正确的方向吗? 我有更多关于我想做什么的信息,我只是不知道什么是相关的,什么不是,所以如果你需要更多,请告诉我。
感谢您的提前时间, 克里斯
答案 0 :(得分:1)
您想要的是在窗口中的任何视图处理它们之前拦截所有事件。如果处理了事件,则返回true;如果希望子节点进一步处理事件,则返回false。
答案 1 :(得分:0)
Ben说你的活动可以为你创建的每个EditText实现OnKeyListener,将OnKeyListener设置为活动。
editText1.setOnKeyListener(this);
然后在你的onKey实现中,你可以处理按键事件。
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if(v == editText1) {
// do something
} else if( v == editText2 ) {
// do something
}
return true; // return true if you handled the keypress
}
答案 2 :(得分:-1)
您的活动可以实现OnKeyListener。