setOnFocusChangeListener

setOnFocusChangeListener

android SearchView 有两个方法:setOnQueryTextFocusChangeListener 和 setOnFocusChangeListener。它们可以互换吗?它们之间有什么区别?

最佳答案

1."setOnFocusChangeListener"(从android.view.View继承)是针对整个 View 的。
2."setOnQueryTextFocusChangeListener"仅用于 AutoCompleteTextView。

查看SearchView的代码:

public void setOnQueryTextFocusChangeListener(OnFocusChangeListener listener) {
    mOnQueryTextFocusChangeListener = listener;
}

******

mQueryTextView = (SearchAutoComplete) findViewById(R.id.search_src_text);

******

mQueryTextView.setOnFocusChangeListener(new OnFocusChangeListener() {
        public void onFocusChange(View v, boolean hasFocus) {
            if (mOnQueryTextFocusChangeListener != null) {
                mOnQueryTextFocusChangeListener.onFocusChange(SearchView.this, hasFocus);
            }
        }
    });

关于android - setOnQueryTextFocusChangeListener 与 setOnFocusChangeListener,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26306802/

10-10 14:29