我怎样才能同时获得的OnClick和OnTouch监听器 [英] How can i get both OnClick and OnTouch Listeners
问题描述
我是在一个位置,以实施的OnClick
和 OnTouch
监听器的 ImageView的
。我已经提到的计算器几个环节,但不能达到我的目标。
我怎么能实现this.I've简称
<一个href="http://stackoverflow.com/questions/19538747/how-to-use-both-ontouch-and-onclick-for-an-imagebutton">how同时使用Ontouch和的onClick一个ImageButton的?
<一个href="http://stackoverflow.com/questions/7387572/android-ontouch-with-onclick-and-onlongclick">Android onTouch用的onClick和onLongClick
<一个href="http://stackoverflow.com/questions/5159366/cant-handle-both-click-and-touch-events-simultaneously">Can't同时处理点击和触摸事件同时
其实我的背景是,当我点击的ImageView它会转到其他活动,当我刷上它到喜欢的用户。 任何帮助。
@覆盖
公共布尔onTouch(视图V,MotionEvent事件){
的System.out.println(阿贾伊+ event.getAction()+ event.getAction());
开关(event.getAction()){
案例MotionEvent.ACTION_MOVE:
layOutParams.x = initialX +(int)的(event.getRawX() - initialTouchX);
layOutParams.y = initialY +(int)的(event.getRawY() - initialTouchY);
打破;
案例MotionEvent.ACTION_DOWN:
initialX = layOutParams.x;
initialY = layOutParams.y;
initialTouchX = event.getRawX();
initialTouchY = event.getRawY();
如果(initialTouchX == event.getRawX()&安培;&安培; initialTouchY == event.getRawY()){
返回false; //处理点击
}
打破;
案例MotionEvent.ACTION_UP:
如果(initialTouchX == event.getRawX()&安培;&安培; initialTouchY == event.getRawY()){
返回false; //处理点击
}
打破;
}
返回true;
}
};
的onClick实行
overLayview.setOnClickListener(新OnClickListener(){
@覆盖
公共无效的onClick(视图v){
// TODO自动生成方法存根
的System.out.println(阿杰的onClick Lisner);
}
});
I am in a position to implement different actions for OnClick
and OnTouch
listeners for an ImageView
.I have referred several links in stackoverflow but couldn't achieve my goal.
how can I implement this.I've referred
how to use both Ontouch and Onclick for an ImageButton?
Android onTouch with onClick and onLongClick
Can't handle both click and touch events simultaneously
OnTouch/OnClick listeners. Use both?
actually my context was when i click on imageview it will goto other activity and when i swipe on it it has to liked by the user. any help.
@Override
public boolean onTouch(View v, MotionEvent event) {
System.out.println("ajay +event.getAction()" + event.getAction());
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
layOutParams.x = initialX + (int) (event.getRawX() - initialTouchX);
layOutParams.y = initialY + (int) (event.getRawY() - initialTouchY);
break;
case MotionEvent.ACTION_DOWN:
initialX = layOutParams.x;
initialY = layOutParams.y;
initialTouchX = event.getRawX();
initialTouchY = event.getRawY();
if (initialTouchX == event.getRawX() && initialTouchY == event.getRawY()) {
return false;// to handle Click
}
break;
case MotionEvent.ACTION_UP:
if (initialTouchX == event.getRawX() && initialTouchY == event.getRawY()) {
return false;// to handle Click
}
break;
}
return true;
}
};
onClick Implemenation
overLayview.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("ajay onClick Lisner");
}
});
这篇关于我怎样才能同时获得的OnClick和OnTouch监听器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!