Android SeekBar实现平滑滚动

时间:2021-05-19

本文实例为大家分享了Android SeekBar实现平滑滚动的具体代码,供大家参考,具体内容如下

由于项目需要,SeekBar只需要三个档,但是如果只设置三个档会很难滑,看着也不好看,于是我将其设置为100,然后自动滑到0,50,100的位置

大部分代码还是跟之前一样,只是把max改为100,progress改为50

<SeekBar android:layout_width="match_parent" android:layout_height="wrap_content" android:max="100" android:thumb="@drawable/device_control_yellow_mid_img_40" android:maxHeight="8dp" android:progress="50" android:progressDrawable="@drawable/seek_style" android:id="@+id/id_seek_bar" android:layout_marginTop="100dp" />

然后

public class MainActivity extends Activity implements SeekBar.OnSeekBarChangeListener{ private int quota;//当前滑动到的值 //我的习惯,在Activity后面implements点击事件,然后在类中处理 @Override public void onProgressChanged(SeekBar seekBar, int i, boolean b) { quota=i; } @Override public void onStartTrackingTouch(SeekBar seekBar) { mTextView.setText("按下SeekBar "); } @Override public void onStopTrackingTouch(SeekBar seekBar) { mTextView.setText("松开SeekBar "); setSeekBar(quota); } private void setSeekBar(int i){ if (i<33){ mTextView2.setText("低温"); Drawable drawable=getResources().getDrawable(R.drawable.green_low_img_40); mSeekBar.setThumb(drawable); mSeekBar.setProgress(1); }else if (i>66){ mTextView2.setText("高温"); Drawable drawable2=getResources().getDrawable(R.drawable.red_high_img_40); mSeekBar.setThumb(drawable2); mSeekBar.setProgress(99); }else { mTextView2.setText("中温"); Drawable drawable1=getResources().getDrawable(R.drawable.yellow_mid_img_40); mSeekBar.setThumb(drawable1); mSeekBar.setProgress(50); } }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章