Pregunta

¿Hay alguna manera de eliminar la imagen de fondo en la barra de widget Android SeekBar?

Sólo quiero que se muestre un control deslizante sin barra de progreso detrás de él.

Borrar

Cualquier ayuda?

¿Fue útil?

Solución 2

Bueno, he resuelto mi problema.

Para eliminar el fondo, hay que crear un estirable blanco y ponerlo a la progressDrawable:

satBar.setProgressDrawable(invisibleBackground);

Si lo establece a cero no parece funcionar.

Otros consejos

Hay una manera más sencilla que no requiere la creación de un nuevo estirable. Basta con establecer lo siguiente en su definición XML

android:progressDrawable="@android:color/transparent"

O si usted quiere hacerlo en el código:

mySlider.setProgressDrawable(new ColorDrawable(android.R.color.transparent));

Una forma de hacer esto sería cambiar el color de la barra de progreso para el color de fondo. Usted tiene que utilizar un diseño personalizado.

<SeekBar
  android:layout_width="350px"
  android:layout_height="25px"
  android:layout_margin="30px"
  android:layout_x="60px"
  android:layout_y="185px"
  android:id="@+id/seekbar"
  android:progressDrawable="@drawable/myprogress"
/>

Un diseño personalizado se da a continuación - jugar con los colores:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item android:id="@android:id/background">
<shape>
    <corners android:radius="5dip" />
    <gradient
            android:startColor="#ff9d9e9d"
            android:centerColor="#ff5a5d5a"
            android:centerY="0.75"
            android:endColor="#ff747674"
            android:angle="270"
    />
</shape>
</item>


<item
android:id="@android:id/progress"
>
<clip>
    <shape>
        <corners
            android:radius="5dip" />
        <gradient
            android:startColor="#9191FE"
            android:centerColor="#9191FE"
            android:centerY="0.75"
            android:endColor="#9191FE"
            android:angle="270" />
    </shape>
</clip>
</item>

crear un archivo XML seekbar_progress.xml y colocarlo en drawable rayas folder.Here es una imagen, tomar una imagen y colocarlo en la carpeta drawable.

seekbar_progress.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >  

  <item>
    <clip>
    <bitmap xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@drawable/stripes"
        android:tileMode="repeat"
        android:antialias="true"
        android:dither="true"
        android:filter="false"
        android:gravity="left"
    />
    </clip>
</item>
</layer-list>

Ahora en su archivo main xml que está teniendo código de barra de búsqueda, tomar una imagen y guardar en seekbar drawable folder.here es una imagen.

    <SeekBar
             android:id="@+id/seekbar"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:background="@drawable/seekbar"
             android:progressDrawable="@drawable/seekbar_progress"/>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top