| package com.doumee.lib_coremodel.binding.viewadapter.mswitch; | 
|   | 
|   | 
| import android.widget.CompoundButton; | 
| import android.widget.Switch; | 
|   | 
| import androidx.databinding.BindingAdapter; | 
|   | 
| import com.doumee.lib_coremodel.binding.command.BindingCommand; | 
|   | 
|   | 
| /** | 
|  * Created by goldze on 2017/6/18. | 
|  */ | 
|   | 
| public class ViewAdapter { | 
|     /** | 
|      * 设置开关状态 | 
|      * | 
|      * @param mSwitch Switch控件 | 
|      */ | 
|     @BindingAdapter("switchState") | 
|     public static void setSwitchState(Switch mSwitch, boolean isChecked) { | 
|         mSwitch.setChecked(isChecked); | 
|     } | 
|   | 
|     /** | 
|      * Switch的状态改变监听 | 
|      * | 
|      * @param mSwitch        Switch控件 | 
|      * @param changeListener 事件绑定命令 | 
|      */ | 
|     @BindingAdapter("onCheckedChangeCommand") | 
|     public static void onCheckedChangeCommand(final Switch mSwitch, final BindingCommand<Boolean> changeListener) { | 
|         if (changeListener != null) { | 
|             mSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { | 
|                 @Override | 
|                 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { | 
|                     changeListener.execute(isChecked); | 
|                 } | 
|             }); | 
|         } | 
|     } | 
| } |