修改onClickListener中的视图

时间:2013-02-10 19:19:26

标签: android onclicklistener

我在单独的类中实现了onClickListener和我的应用程序的主要活动。主类包含一些按钮和一些edittext,当用户按下取消按钮时,应重置edittext提示。 主要活动

public ButtonListener(Context cx , Button b, EditText f) {
    cntx = cx;
    button = b;
    et = f;
}
@Override
public void onClick(View v) {
    // TODO Auto-generated method stub
            //check wich button was pressed
    if(button.getId() == R.button.button_cancel) {
        et.setHint(R.string.et_nome);
    }
    else {
            //operations for other buttons

但它不起作用。当我按下取消时,它的编辑文本不会被删除。 在主要活动中,我用

调用按钮
Button b = (Button)findViewById(R.button.button_cancel);

并设置监听器

b.setOnclickListener(new ButtonListener(this, b, edittext));

出了什么问题?

2 个答案:

答案 0 :(得分:3)

尝试将其文本设置为空白:

et.setText(" ");

您可以查看其他方法here

另一种处理方法是隐藏按钮以暂时消除它。查看this thread

答案 1 :(得分:1)

你应该改变:

if(button.getId() == R.button.button_cancel)

为:

if(v.getId() == R.button.button_cancel)

以便代码检查引发click事件的元素的标识符,而不是成员变量button