[Androidのは、ドラッグ面積を増やすシークバー]

// seekbarLayout是シークバー对象statusSeekbar的父层布局 
seekbarLayout = mStatusViewLayout.findViewById(R.id.id_seekbar_layout)。
seekbarLayout.setOnTouchListener(新しいView.OnTouchListener(){ 
    @Override 
    公共 ブールonTouch(ビューV、MotionEventイベント){ 
        のRect seekRect = 新規のRect(); 
        statusSeekbar.getHitRect(seekRect); 
        もし((event.getY()> =( seekRect.top - 500))&&(event.getY()<=(seekRect.bottom + 500 ))){
             フロート Y = seekRect.top + seekRect.height()/ 2 ;
             // シークバーのみ受け入れる相対Xの
            フロートX = event.getX() - seekRect.left。
            もし(x <0 ){ 
                X = 0 
            } そう であれば(X> seekRect.width()){ 
                X = seekRect.width()。
            } 
            MotionEvent Meは = MotionEvent.obtain(event.getDownTime()、event.getEventTime()、
                    event.getAction()において、x、yは、event.getMetaState())。
            リターンstatusSeekbar.onTouchEvent(私)。
        } 
        を返す 
    } 
})。

原則:ViewはonTouchEventシークバータッチイベント、ダイレクトマニュアルコールのより大きな面積を取得します。

おすすめ

転載: www.cnblogs.com/mamamia/p/12611457.html