|  |  |  | @ -3,9 +3,11 @@ package com.yinuo.safetywatcher.watcher.ui | 
		
	
		
			
				|  |  |  |  | import android.view.View | 
		
	
		
			
				|  |  |  |  | import android.widget.SeekBar | 
		
	
		
			
				|  |  |  |  | import android.widget.SeekBar.OnSeekBarChangeListener | 
		
	
		
			
				|  |  |  |  | import com.common.commonlib.utils.MMKVUtils | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.R | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.databinding.ActivitySpeedSettingBinding | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.base.NoOptionsActivity | 
		
	
		
			
				|  |  |  |  | import com.yinuo.safetywatcher.watcher.port.GasPortUtils | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | class SpeedSettingActivity : NoOptionsActivity() { | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
	
		
			
				
					|  |  |  | @ -22,12 +24,12 @@ class SpeedSettingActivity : NoOptionsActivity() { | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     override fun initView() { | 
		
	
		
			
				|  |  |  |  |         val initLight = 0 | 
		
	
		
			
				|  |  |  |  |         mBinding.sbSpeed.progress = initLight | 
		
	
		
			
				|  |  |  |  |         mBinding.tvSpeed.text = getShowPercent(initLight) | 
		
	
		
			
				|  |  |  |  |         val initSpeed = getDefaultSpeed() | 
		
	
		
			
				|  |  |  |  |         mBinding.sbSpeed.progress = initSpeed | 
		
	
		
			
				|  |  |  |  |         mBinding.tvSpeed.text = getShowSpeed(initSpeed) | 
		
	
		
			
				|  |  |  |  |         mBinding.sbSpeed.setOnSeekBarChangeListener(object : OnSeekBarChangeListener { | 
		
	
		
			
				|  |  |  |  |             override fun onProgressChanged(p0: SeekBar?, p1: Int, p2: Boolean) { | 
		
	
		
			
				|  |  |  |  |                 mBinding.tvSpeed.text = getShowPercent(p1) | 
		
	
		
			
				|  |  |  |  |                 mBinding.tvSpeed.text = getShowSpeed(p1) | 
		
	
		
			
				|  |  |  |  |             } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |             override fun onStartTrackingTouch(p0: SeekBar?) { | 
		
	
	
		
			
				
					|  |  |  | @ -42,20 +44,34 @@ class SpeedSettingActivity : NoOptionsActivity() { | 
		
	
		
			
				|  |  |  |  |             onBackPressed() | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |         mBinding.tvConfirm.setOnClickListener { | 
		
	
		
			
				|  |  |  |  |             setSpeed() | 
		
	
		
			
				|  |  |  |  |             setSpeed(mBinding.sbSpeed.progress) | 
		
	
		
			
				|  |  |  |  |             onBackPressed() | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private fun getDefaultSpeed(): Int { | 
		
	
		
			
				|  |  |  |  |         var localSpeed = MMKVUtils.getInt("speed") | 
		
	
		
			
				|  |  |  |  |         if (localSpeed < 0) { | 
		
	
		
			
				|  |  |  |  |             localSpeed = 4 | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |         return localSpeed | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     /** | 
		
	
		
			
				|  |  |  |  |      * 设置转速 | 
		
	
		
			
				|  |  |  |  |      */ | 
		
	
		
			
				|  |  |  |  |     private fun setSpeed() { | 
		
	
		
			
				|  |  |  |  |         TODO("Not yet implemented") | 
		
	
		
			
				|  |  |  |  |     private fun setSpeed(speedProgress: Int) { | 
		
	
		
			
				|  |  |  |  |         var legalSpeed = speedProgress | 
		
	
		
			
				|  |  |  |  |         if (speedProgress < 0) { | 
		
	
		
			
				|  |  |  |  |             legalSpeed = 0 | 
		
	
		
			
				|  |  |  |  |         } else if (speedProgress > 9) { | 
		
	
		
			
				|  |  |  |  |             legalSpeed = 9 | 
		
	
		
			
				|  |  |  |  |         } | 
		
	
		
			
				|  |  |  |  |         MMKVUtils.put("speed", legalSpeed) | 
		
	
		
			
				|  |  |  |  |         GasPortUtils.setSpeed(legalSpeed) | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |     private fun getShowPercent(initLight: Int): CharSequence? { | 
		
	
		
			
				|  |  |  |  |         val percent = (initLight/255f * 100).toInt() | 
		
	
		
			
				|  |  |  |  |         return "$percent%" | 
		
	
		
			
				|  |  |  |  |     private fun getShowSpeed(speed: Int): CharSequence? { | 
		
	
		
			
				|  |  |  |  |         return "${speed + 1}档" | 
		
	
		
			
				|  |  |  |  |     } | 
		
	
		
			
				|  |  |  |  | } |