单击时隐藏和显示搜索视图

hide and show search view when clicked

在我的项目中我创建了按钮和搜索视图,我想在单击按钮时隐藏搜索视图和 show/visible,我该怎么做 这是 xml 代码

<android.support.v7.widget.SearchView
   android:layout_width="match_parent"
   android:id="@+id/search"
   android:queryHint="Search .."
   android:layout_height="wrap_content">
</android.support.v7.widget.SearchView>


<Button
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="search"
   android:layout_below="@+id/search"
   android:textSize="16sp"
   android:id="@+id/but"/>

这是java代码

  final SearchView se=findViewById(R.id.search);
    Button bt = findViewById(R.id.but);
    bt.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

        }
    });

我尝试编写 setvisible 方法,但在 android 3

中找不到它

在代码

中添加名为flagboolean参数
boolean flag = false;

检查 onClick 中的布尔值 hide/unhide searchview

bt.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
       if (flag){
         // means true
         serchview.setVisibility(View.INVISIBLE);
         flag = false; 
       }
       else{
         serchview.setVisibility(View.VISIBLE) 
         flag = true;
       }  

     }
});

如果您正在使用工具栏上的搜索视图和按钮,则可以在菜单中使用搜索视图。

<item
    android:id="@+id/miLocationsListSearch"
    android:icon="@drawable/icn_search"
    android:iconifiedByDefault="false"
    android:orderInCategory="100"
    android:title="@string/menu.search"
    app:actionViewClass="android.support.v7.widget.SearchView"
    app:showAsAction="always|collapseActionView" />

 bt.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
      if(se.getVisiblity()==View.Visible)
          se.setVisibility(View.INVISIBLE);
      else
          se.setVisibility(View.VISIBLE);
    }
});