我知道如果你想检查是否有人点击了什么,你会做
if(event.getAction() == MotionEvent.ACTION_DOWN)
但我想检查一下屏幕是否没有点击过。 为了做到这一点,我会生成什么代码?
另外,作为附注,让Android应用中的所有课程都扩展View
课程会是个好主意吗?
答案 0 :(得分:2)
创建一个名为boolean
的{{1}}变量,并使用最istouched
上的onTouchLisener
实际上是View
,Window
s是,快速样本
View
所以这里的逻辑是如果getWindow().getDecorView().setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View arg0, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_UP){
// i have been touched
istouched = true;
Toast.makeText(getBaseContext(), "you touched me?!! - i will tell my mom", Toast.LENGTH_SHORT).show();
return true;
}
if(event.getAction() == MotionEvent.ACTION_DOWN){
// you can implement this
Toast.makeText(getBaseContext(), "shhh; i am touching", Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
});
是istouched
你的设备没有告诉她的妈妈,这意味着它没有被触及..
希望有所帮助
答案 1 :(得分:0)
一种方法是将android:onClick="method"
添加到布局xml中的根布局。
在方法中,您可以将boolean
变量更改为true(screenClicked = true)。