Day*_*ppy 2 android motionevent android-touch-event
在activity使用
public boolean dispatchTouchEvent(MotionEvent ev)
我怎么知道用户正在触摸Y-axis 20%边缘区域的左侧?
它应该是通用的,并且应该处理方向。我不想在上面创建任何隐藏的视图。
event.getX()event.getX()设备内部是否有20%例如:
public class YourActivity extends Activity {
private LinearLayout background;
private float xValue, yValue, leftPersentage;
private int height,width;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
height = displaymetrics.heightPixels;
width = displaymetrics.widthPixels;
leftPersentage = (width)*20/100;
background = (LinearLayout) findViewById(R.id.background);
background.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
xValue = event.getX();
yValue = event.getY();
Log.d("Values Clicked" , xValue +"and" + yValue);
if(xValue <= leftPersentage){
// perform your task
Log.d("Values Clicked onLeft" , xValue +"and" + yValue);
}
return false;
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
778 次 |
| 最近记录: |