亲宝软件园·资讯

展开

Android SeekBar平滑滚动 Android SeekBar实现平滑滚动

酥脆 人气:0
想了解Android SeekBar实现平滑滚动的相关内容吗,酥脆在本文为您仔细讲解Android SeekBar平滑滚动的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点: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);

    }
  }

}

加载全部内容

相关教程
猜你喜欢
用户评论