您的位置:首页 > 移动开发 > Android开发

Android中增加seekbar可触摸的区域

2016-01-15 00:51 489 查看
//mCurrentView 是Seekbar的父亲

private void enlargeSeekBar(){

mCurrentView.setOnTouchListener(new OnTouchListener(){

@Override

public boolean onTouch(View v, MotionEvent event) {

Rect seekRect = new Rect();

mSeekBar.getHitRect(seekRect);

if((event.getY() >= (seekRect.top-50)) && (event.getY()<= (seekRect.bottom+50))){

float y = seekRect.top + seekRect.height()/2;

//seekBar only accept relative x

float x = event.getX()-seekRect.left;

if(x <0) {

x=0;

}

else if(x > seekRect.width()) {

x= seekRect.width();

}

MotionEvent me = MotionEvent.obtain(event.getDownTime(), event.getEventTime(),

event.getAction(), x, y, event.getMetaState());

return mSeekBar.onTouchEvent(me);

}

return false;

}

});

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: