【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);

        }
    }
}
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值