[Android SeekBar aumentar el área de arrastre]

// seekbarLayout是seekBar对象statusSeekbar的父层布局 
seekbarLayout = mStatusViewLayout.findViewById (R.id.id_seekbar_layout); 
seekbarLayout.setOnTouchListener ( nueva View.OnTouchListener () { 
    @ Override 
    pública  booleano onTouch (Ver v, caso MotionEvent) { 
        Rect seekRect = nueva Rect (); 
        statusSeekbar.getHitRect (seekRect); 
        si ((event.getY ()> = ( seekRect.top - 500)) && (event.getY () <= (seekRect.bottom + 500 ))) {
             flotador y = seekRect.top + seekRect.height () / 2 ;
             // seekBar solamente aceptar x relativa 
            flotadorx = event.getX () - seekRect.left;
            si (x <0 ) { 
                x = 0 ; 
            } Demás  si (x> seekRect.width ()) { 
                x = seekRect.width (); 
            } 
            MotionEvent me = MotionEvent.obtain (event.getDownTime (), event.getEventTime (), 
                    event.getAction (), x, y, event.getMetaState ()); 
            retorno statusSeekbar.onTouchEvent (me); 
        } 
        Devolver  falsa ; 
    } 
});

Principio: Vista de conseguir una mayor área de contacto del evento, llamada manual directa seekbar onTouchEvent.

Supongo que te gusta

Origin www.cnblogs.com/mamamia/p/12611457.html
Recomendado
Clasificación