Switch?.setOnCheckedChangeListener(object :CompoundButton.OnCheckedChangeListener{
override fun onCheckedChanged(buttonView: CompoundButton?, isChecked: Boolean) {
var listener = this
UserModel.modifyQrCodeAccountIsAutoAcceptOrder(isChecked, item.id!!, object : OnResultShowNoLoadingTextDialogCallback<ResponseData<Any>>(mContext) {
override fun onFailed(error: ErrorResult) {
//如果失败,先取消监听,然后设置选中状态,重新设置监听,这样可避免调用setCheck()时调用了监听的回调方法onCheckedChanged
sw?.setOnCheckedChangeListener(null)
sw?.isChecked = !isChecked
sw?.setOnCheckedChangeListener(listener)
}
override fun onSuccess(t: ResponseData<Any>) {
if (isChecked) {
Toasty.info(mContext, "已开启").show()
} else {
Toasty.info(mContext, "已关闭").show()
}
}
})
}
})