如何解决Android 中的 onTouch 方法
我正在尝试使用 onTouch 方法来使用滑动来调节音量和亮度。下面的方法根本没有实现,视频的行为与以前相同。不知道亮度是怎么控制的。下面是方法的实现
public class Activity extends AppCompatActivity implements View.OnTouchListener {
private boolean intLeft,intRight;
private int sWidth,sHeight;
private long diffX,diffY;
private display display;
private Point size;
private float downX,downY;
private AudioManager mAudioManager;
protected void onCreate(Bundle savedInstanceState) {
mAudioManager = (AudioManager)getApplicationContext().getSystemService(Context.AUdio_SERVICE);
}
private void getScreenSize() {
display = getwindowManager().getDefaultdisplay();
size = new Point();
display.getSize(size);
sWidth = size.x;
sHeight = size.y;
}
@Override
public boolean onTouch(View v,MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
downX = event.getX();
downY = event.getY();
if (event.getX() < (sWidth / 2)) {
intLeft = true;
intRight = false;
} else if (event.getX() > (sWidth / 2)) {
intLeft = false;
intRight = true;
}
break;
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_MOVE:
float x2 = event.getX();
float y2 = event.getY();
diffX = (long) (Math.ceil(event.getX() - downX));
diffY = (long) (Math.ceil(event.getY() - downY));
if (Math.abs(diffY) > Math.abs(diffX)) {
if (intLeft) {
if (downY < y2) {
} else if (downY > y2) {
}
} else if (intRight) {
if (downY < y2) {
mAudioManager.adjustVolume(AudioManager.ADJUST_LOWER,AudioManager.FLAG_PLAY_SOUND);
} else if (downY > y2) {
mAudioManager.adjustVolume(AudioManager.ADJUST_RAISE,AudioManager.FLAG_PLAY_SOUND);
}
}
}
}
return true;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。