android - programacion - ¿Cómo mostrar algún valor en la barra de búsqueda por defecto?
manual de android en pdf (4)
Tengo una barra de búsqueda, por ejemplo: de 0 a 10. ¿Cómo puedo hacer si quiero establecer la barra de búsqueda en 5 como posición predeterminada? Así que en este ejemplo, la barra de búsqueda debería comenzar desde la mitad.
Espero que este código seguramente te ayude.
Prueba esto...
float discrete=0;
float start=0;
float end=100;
float start_pos=0;
int start_position=0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
start=-10; //you need to give starting value of SeekBar
end=10; //you need to give end value of SeekBar
start_pos=5; //you need to give starting position value of SeekBar
start_position=(int) (((start_pos-start)/(end-start))*100);
discrete=start_pos;
SeekBar seek=(SeekBar) findViewById(R.id.seekBar1);
seek.setProgress(start_position);
seek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
Toast.makeText(getBaseContext(), "discrete = "+String.valueOf(discrete), Toast.LENGTH_SHORT).show();
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {
// TODO Auto-generated method stub
// To convert it as discrete value
float temp=progress;
float dis=end-start;
discrete=(start+((temp/100)*dis));
}
});
}
Usa este
android:progress="5"
Como "progreso", hereda algunos de sus atributos de ProgressBar. Puede encontrar todos los atributos en http://developer.android.com/reference/android/widget/SeekBar.html
Para obtener Seekbar en el valor de 5
En el diseño xml use el valor máximo como 10
android:max="10"
En el java para seekbar para obtener progreso 5
seekbar = (SeekBar) findViewById(R.id.seekBar1);
seekbar.setProgress(5);
Eso es :)
final Timer timer = new Timer();
seekBar_efficiency.setMax(40);
seekBar_efficiency.setProgress(35);
timer.schedule(new TimerTask() {
@Override
public void run() {
seekBar_efficiency.setProgress(20);
timer.cancel();
}
}, 200, 50);