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