android 自定义控件 方法冲突

我有一个自定义控件,里面有一个checkbox,一个edittext现在checkbox改变状态时,相应地把edittext改为可写或不可定,但同时让用户能根据check... 我有一个 自定义控件, 里面有一个 checkbox, 一个 edittext
现在 checkbox 改变状态时,相应地把 edittext 改为可写或不可定, 但同时让用户能根据 checkbox 状态改变作其它事情,怎么处理呢?
这是自定义控件里面的内容 (chRateType 是 checkbox, etContent 是 EditText)
ckRateType.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
etContent.setEnabled(isChecked);
}
});

public void addBoxCheckedChangeListener(OnCheckedChangeListener mListener) {
ckRateType.setOnCheckedChangeListener(mListener);
}

用户可以使用 addBoxCheckedChangeListener 来监听状态的更改, 并作出相应的改变。
问题来了
如果用户使用了 addBoxCheckedChangeListener, 就等于调用了 setOnCheckedChangeListener, 那我原本的 setOnCheckedChangeListener, 就无法起作用了。 求解!
展开
 我来答
贸垒2u
2015-02-13 · TA获得超过207个赞
知道小有建树答主
回答量:464
采纳率:0%
帮助的人:339万
展开全部
private OnCheckedChangeListener listener1,listener2;
protected void onFinishInflate() {
chRateType.setOnCheckedChangeListener(new A());
}
public void setOnCheckedChangeListener(OnCheckedChangeListener listener){
listener1 = listener;
}
public void addBoxCheckedChangeListener(OnCheckedChangeListener listener){
listener2 = listener;
}
class A implements OnCheckedChangeListener{

@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if(listener1!=null)
listener1.onCheckedChanged(buttonView, isChecked);
if(listener2!=null)
listener2.onCheckedChanged(buttonView, isChecked);
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式