0

如果单击相同的内容,我想选择 EditText 字段中存在的所有文本,现在我可以通过以下代码在 android 2.x 和 3.x 中实现这一点,但在 4.0 中则不行。如果有人遇到同样的问题,请告诉我如何解决。

@Override
public void onFocusChange(View v, boolean hasFocus) {
    switch(v.getId()) {
    case R.id.passcodetext1:
        if(hasFocus) editText1.selectAll();
        break;

    case R.id.passcodetext2:
        if(hasFocus) editText2.selectAll();
        break;

    case R.id.passcodetext3:
        if(hasFocus) editText3.selectAll();
        break;

    case R.id.passcodetext4:
        if(hasFocus) editText4.selectAll();
        break;
    }

}
4

3 回答 3

5

我通过在 layout.xml 中添加一个属性解决了这个问题。

android:selectAllOnFocus="true"

早些时候我没有意识到这一点,但这确实是解决这类问题的一个很好的解决方案。

于 2013-01-24T08:28:45.417 回答
0

试试这个...

 if(hasFocus) v.selectAll();
              ^^^^^^^^^^^
于 2012-08-03T10:12:35.663 回答
0

请参阅此解决方案:https ://stackoverflow.com/a/35527348/1504248

可能你需要运行类似的东西:

        Editable text = edit.getText();
        if (text.length() > 0) {
            text.replace(0, 1, text.subSequence(0, 1), 0, 1);
            edit.selectAll();
        }

在你的if(hasFocus).

于 2016-02-20T18:37:08.227 回答