Personalizar rangeseekbar android con un pulgar
Quiero obtener este tipo de salida. Estoy usando rangeseekbar personalizado (referencia desde este enlace )
Tengo esta salida.
- ¿Cómo editas una biblioteca de dependencia / externa en android studio?
- Cómo diseñar "animación manual" en un juego de Android sin retrasos de código
- Cómo grabar audio en Android
- Cómo agarrar JSON Array y utilizar gson para analizar cada objeto json? (Retrofit)
- Comparar certificados SSL mediante la firma: ¿es suficiente?
Pero quiero obtener este tipo de salida ..
El selector de color amarillo es un tipo de rango seekbar. Quiero crear un rango de búsqueda personalizado, así que por favor ayúdame. Ya he creado dos rangeseekbar pulgar, pero quiero crear una imagen única rangeseekbar y debe ser streatchable.
Gracias por adelantado.
- NullPointerException intentando recuperar savedInstanceState con una matriz de clase personalizada
- Android Development: Obtención de datos desde la Web
- java.util.ConcurrentModificationException - ArrayList
- Android.annotation no se puede resolver
- ¿Cómo se ha terminado la actividad?
- Proguard eliminando anotaciones en la aplicación de Android
- ¿Por qué resolveInfo.loadLabel () es tan ridículamente lento?
- Android: EditText en el problema de ListView
Esa biblioteca particular tiene un código de dibujo muy específico para el tema Holo Seekbar. Usted tendrá que implementar su propio código de dibujo para lograr el efecto que usted está buscando.
El código de la biblioteca puede ayudarle a empezar;
/** * Draws the widget on the given canvas. */ @Override protected synchronized void onDraw(Canvas canvas) { super.onDraw(canvas); // draw seek bar background line final RectF rect = new RectF(padding, 0.5f * (getHeight() - lineHeight), getWidth() - padding, 0.5f * (getHeight() + lineHeight)); paint.setStyle(Style.FILL); paint.setColor(Color.GRAY); paint.setAntiAlias(true); canvas.drawRect(rect, paint); // draw seek bar active range line rect.left = normalizedToScreen(normalizedMinValue); rect.right = normalizedToScreen(normalizedMaxValue); // orange color paint.setColor(DEFAULT_COLOR); canvas.drawRect(rect, paint); // draw minimum thumb drawThumb(normalizedToScreen(normalizedMinValue), Thumb.MIN.equals(pressedThumb), canvas); // draw maximum thumb drawThumb(normalizedToScreen(normalizedMaxValue), Thumb.MAX.equals(pressedThumb), canvas); }
Lo que ves aquí es la devolución de llamada onDraw en la clase RangeSeekBar. Aquí se dibujan las líneas azules y grises, después de lo cual se dibujan los pulgares sobre ellos. Usted tendrá que hacer algo similar, pero con su lógica específica, gráficos, etc
Así que subclase RangeSeekBar y ampliar la funcionalidad de esa biblioteca o crear su propia vista personalizada o ViewGroup, siguiendo las sugerencias de las lecciones oficiales de Android; http://developer.android.com/training/custom-views/index.html
- Integración de la pasarela de pago de PostFinance para Android
- Cómo las notificaciones push de Linphone son compatibles con Android / iOS