Android-SeekBar起点
我的视图中有两个Android-SeekBar起点,android,seekbar,Android,Seekbar,我的视图中有两个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
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 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是可以的,但是另一个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 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为1%(进度10,最大1000),第二个SeekBar为10%(进度1,最大10)
<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不是一开始。只需调整值…如果您希望两个搜索栏都从开头开始,同时仍然将价格和距离的最小值分别设置为10和1,请将它们都设置为零,然后按如下方式编程添加最小值:
<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(0); // Set it to zero so it will start at the left-most edge
sb.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
progress = progress + 10; // Add the minimum value (10)
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) {}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {}
});
SeekBar seek = (SeekBar) v.findViewById(R.id.select_distance);
seek.setMax(10);
seek.setProgress(0); // Set it to zero so it will start at the left-most edge
seek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
progress = progress + 1; // Add the minimum value (1)
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) {}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {}
});
恐怕我还是不知道如何调整它。您能帮助我吗?您的代码包含值-setMax()和setProgress()。调整这些值。感谢您对所有解释和代码进行了明确说明!