这篇文章主要介绍了在Android中如何设置SeekBar禁止滑动,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
由于项目需要,在关闭开关的时候需要将顶部的调温栏禁用,变为灰色且不可点击滑动,而开的时候要启用,变为黄色且可点击滑动
为防止抓不住重点,仅展示相关代码
public class DeviceControlActivity extends Activity implements View.OnClickListener,SeekBar.OnSeekBarChangeListener{
private SeekBar mSeekBar;
private TextView mLowTempTextView;
private TextView mMiddleTempTextView;
private TextView mHighTempTextView;
private Button mSwitchButton;
private int mSwitchButtonStatus =0;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.device_control_layout);
initView();
intiData();
initEvent();
}
private void initView(){
mSeekBar=findViewById(R.id.id_seek_bar);
}
private void initEvent(){
mSeekBar.setOnSeekBarChangeListener(this);
setSeekBarClickable(0);//先禁用seekBar
}
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.id_device_control_switch_button:
if (mSwitchButtonStatus ==1){
mSwitchButton.setBackgroundResource(R.drawable.switch_button_off_img);
mSwitchButtonStatus =0;
sendAt("AT+IO1=L");
setSeekBarClickable(mSwitchButtonStatus);//禁用
}else {
mSwitchButton.setBackgroundResource(R.drawable.switch_button_on_img);
mSwitchButtonStatus =1;
sendAt("AT+IO1=H");
setSeekBarClickable(mSwitchButtonStatus);//启用
}
break;
}
}
private void setSeekBarClickable(int i){
if (i==1){
//启用状态
mSeekBar.setClickable(true);
mSeekBar.setEnabled(true);
mSeekBar.setSelected(true);
mSeekBar.setFocusable(true);
Drawable drawable=getResources().getDrawable(R.drawable.yellow_mid_img_40);
mSeekBar.setThumb(drawable);
mSeekBar.setProgress(50);
}else {
//禁用状态
mSeekBar.setClickable(false);
mSeekBar.setEnabled(false);
mSeekBar.setSelected(false);
mSeekBar.setFocusable(false);
Drawable drawable=getResources().getDrawable(R.drawable.seek_bar_grey_img_40);
mSeekBar.setThumb(drawable);
mSeekBar.setProgress(50);
}
}
}
感谢你能够认真阅读完这篇文章,希望小编分享的“在Android中如何设置SeekBar禁止滑动”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。