ビューには 2 つSeekBar
あり、レイアウトで同様に宣言します。
<SeekBar android:id="@+id/select_price"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp" />
<TextView android:id="@+id/max_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0 VND"
android:layout_gravity="center" />
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:orientation="horizontal">
<ImageView android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_distance"
android:layout_marginRight="5dp" />
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:text="@string/max_distance" />
</LinearLayout>
<SeekBar android:id="@+id/select_distance"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"/>
<TextView android:id="@+id/distance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="0 Km"
android:layout_gravity="center" />
そして、ここに私がそれらを使用するコードがあります:
SeekBar sb = (SeekBar) v.findViewById(R.id.select_price);
sb.setMax(1000);
sb.setProgress(10);
sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener(){
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
TextView text = (TextView) v.findViewById(R.id.max_price);
text.setText(Integer.toString(progress) + PlaceListActivity.this.getResources().getString(R.string.dong));
maxPrice = progress;
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
});
SeekBar seek = (SeekBar) v.findViewById(R.id.select_distance);
seek.setMax(10);
seek.setProgress(1);
seek.setOnSeekBarChangeListener(new OnSeekBarChangeListener(){
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
TextView text = (TextView) v.findViewById(R.id.distance);
text.setText(Integer.toString(progress) + PlaceListActivity.this.getResources().getString(R.string.km));
maxDistance = progress;
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
});
しかし、デバイスでアプリをデバッグすると、最初のシークバーは問題ありませんが、別のシークバーは奇妙になり、その理由がわかりません。これはスクリーンショットです:
ご覧のとおり、最初の小節の開始点は最初からではありません。この理由は何でしょうか?誰かがこれで私を助けてくれることを本当に願っています。ありがとう。