0

我有一个编辑文本,当我在此处输入内容并在外部点击时,如果输入的值不为空,焦点和软键盘应该隐藏并更改按钮的可见性。如果我再次输入并更改编辑文本 0 的值并点击,按钮应该再次变得不可见。PFA 我在做什么:

public void onFocusChange(View v, boolean hasFocus) {
    String s = enter_num.getText().toString();
    if(!(s.equals(""))){
        enter_num.setFocusable(isFinishing());
        InputMethodManager imm = (InputMethodManager).getContext().getSystemService(Context.INPUT_METHOD_SERVICE); 
        imm.hideSoftInputFromWindow(v.getWindowToken(), 0);                         
        ans_status2.setVisibility(View.VISIBLE);                                                                
    }
}

这并没有失去焦点。这是开始的正确方法吗?

4

1 回答 1

0

试试这个:

public void onFocusChange(View v, boolean hasFocus) {
    String s = enter_num.getText().toString().concat("");
    int length = s.length();
    if(length <= 0){                
    } else {
        if(s.equals("0")){
            enter_num.setFocusable(isFinishing());
            InputMethodManager imm = (InputMethodManager).getContext().getSystemService(Context.INPUT_METHOD_SERVICE); 
            imm.hideSoftInputFromWindow(v.getWindowToken(), 0);                         
            ans_status2.setVisibility(View.VISIBLE);                                                                
         }
    }
}

希望这会帮助你。

于 2013-03-27T12:38:42.677 回答