Java OnGenericMotionListener不';我好像不工作
这真的很奇怪,所有其他的听众都像onClick这样工作。。但是这个监听器似乎不起作用,下面是我的代码:Java OnGenericMotionListener不';我好像不工作,java,android,Java,Android,这真的很奇怪,所有其他的听众都像onClick这样工作。。但是这个监听器似乎不起作用,下面是我的代码: public class HeloActivity extends Activity implements OnGenericMotionListener{ /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState)
public class HeloActivity extends Activity implements OnGenericMotionListener{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
View root = findViewById(R.id.root );
root.setOnGenericMotionListener(this);
}
@Override
public boolean onGenericMotion(View v, MotionEvent event) {
// TODO Auto-generated method stub
Log.d( "special",v.toString() );
return false;
}
}
为什么这不起作用?您确实意识到您都实现了侦听器,然后将其附加到视图中?至少它是多余的
谢谢。这是一个老问题,但我目前正在考虑同样的问题,因此我将添加此问题以供将来参考 这可能是因为Activity实现了一个接收运动事件的
onGenerericMotionEvent
方法,但是您也在同一个类中从View
-onGenericMotion
实现该方法
我没有试过你是如何做到这一点的,但我知道它是通过使用实现
OnGenericMotionListener
的另一个类和在根视图上使用setOnGenericMotionListener
来实现的。你在视图上调用了“运动”吗?监听器是否在视图中注册了?在这种情况下是必需的。活动实现了onGenericMotionEvent(MotionEvent事件),您不需要为其添加侦听器,只需重写即可接收事件。但是View
实现了onGenericMotion(View v,MotionEvent事件)
并且您确实需要在视图上设置一个侦听器。