onClickListener用于未调用的禁用edittext

时间:2012-09-26 12:21:33

标签: android eclipse android-edittext

我正在尝试捕获何时按下禁用的edittext字段。 (我只想改变它,我不想把文字插入其中)。 我为它分配了一个onClickListener,但它没有被调用..任何建议? 还有其他可以听的事吗?

final EditText field = column.get(i);
field.setEnabled(false);
field.setClickable(true);
field.setFocusable(false);
field.setFocusableInTouchMode(false);

field.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                ((EditText)v).setText("a");

            }
        });

谢谢!

2 个答案:

答案 0 :(得分:5)

禁用View时,您无法通过点击事件。

因此,请尝试更改:

field.setEnabled(false);

要:

field.setEnabled(true);

答案 1 :(得分:1)

final EditText field = column.get(i);
field.setCursorVisible(false);

field.setOnFocusChangeListener(new OnFocusChangeListener() {

        @Override
        public void onFocusChange(View v, boolean hasFocus) {
            if (hasFocus) {
                field.setText("something");
                field.clearFocus();
            }
        }
    });