单击searchview外部时,键盘会消失

时间:2015-09-21 19:42:22

标签: android android-activity keyboard searchview listeners

当我点击searchview选项卡外部时,我目前仍然试图让键盘消失。

我的问题是我尝试将onfocus更改侦听器附加到最顶层布局,以便在外部单击时从搜索视图中清除焦点,并且当它工作时,侦听器仅在略低于进度条的情况下工作。我无法让列表器覆盖整个屏幕。救命?我试图获得最顶层布局的父级,但是没有用。

这是我的屏幕图片,直到听众的工作方式:https://drive.google.com/file/d/0B7Dd6tnM1aneaUVZNTI1NXQydDA/view?usp=sharing

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/session_linear_layout"
    android:orientation="vertical" >


    <SearchView
        android:id="@+id/Session_searchbar"
        android:layout_width="match_parent"
        android:layout_height="47dp"
        android:focusable="true"
        android:focusableInTouchMode="true" />

    <ProgressBar
        android:id="@+id/session_progress_spinner"
        style="?android:attr/progressBarStyleLarge"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical|center_horizontal" >
    </ProgressBar>

</LinearLayout>

1 个答案:

答案 0 :(得分:0)

尝试以下代码

InputMethodManager inputManager = 
        (InputMethodManager) context.
            getSystemService(Context.INPUT_METHOD_SERVICE); 
inputManager.hideSoftInputFromWindow(
        searchView.getWindowToken(),
        InputMethodManager.HIDE_NOT_ALWAYS);