作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想在用户选择微调器值时捕获 onClick 事件。
我已尝试实现 OnClickListener
并使用以下代码:
@Override
public void onClick(final View view) {
if (view == countrySpinner) {
Toast.makeText(this, "Override OK!", 3);
}
}
并绑定(bind):
countrySpinner.setOnClickListener(this);
这会编译,但我得到一个 RuntimeException
,建议我对 AdapterView
使用 OnItemClickListener
而不是 OnClickListener
.
如何捕获该 onClick 事件?
最佳答案
尝试设置 OnTouchListener 和 OnKeyListener,而不是设置微调器的 OnClickListener。
spinner.setOnTouchListener(spinnerOnTouch);
spinner.setOnKeyListener(spinnerOnKey);
和听众:
private View.OnTouchListener spinnerOnTouch = new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
//Your code
}
return false;
}
};
private static View.OnKeyListener spinnerOnKey = new View.OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
//your code
return true;
} else {
return false;
}
}
};
关于android - 如何在 Android 中为微调器捕获 onClick 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10213015/
我是一名优秀的程序员,十分优秀!