<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!--右侧搜索操作条目-->
<item
android:id="@+id/action_search"
android:title="搜索"
android:icon="@mipmap/ic_search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="always"/>
</menu><android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_search);
toolbar = (Toolbar) findViewById(R.id.toolbar);
toolbar.setNavigationIcon(R.mipmap.ic_arrow_back);
toolbar.setTitleTextColor(Color.WHITE);
toolbar.setTitle("搜索");
setSupportActionBar(toolbar);@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_search, menu);
MenuItem menuItem = menu.findItem(R.id.action_search);
searchView = (SearchView) MenuItemCompat.getActionView(menuItem);
return super.onCreateOptionsMenu(menu);
}<style name="SeachViewActivityTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<!--toolbar菜单项图标的颜色-->
<item name="android:textColorSecondary">@android:color/white</item>
</style>searchView.setSubmitButtonEnabled(true);//显示提交按钮
searchView.setIconified(false);//设置searchView处于展开状态
searchView.onActionViewExpanded();// 当展开无输入内容的时候,没有关闭的图标
searchView.setIconifiedByDefault(true);//默认为true在框内,设置false则在框外
searchView.setSubmitButtonEnabled(true);// 显示提交按钮
searchView.setQueryHint("输入关键字");mSearchAutoComplete = searchView.findViewById(R.id.search_src_text);
mSearchAutoComplete.setHintTextColor(getResources().getColor(android.R.color.white));//设置提示文字颜色
mSearchAutoComplete.setTextColor(getResources().getColor(android.R.color.white));//设置内容文字颜色searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
Snackbar.make(searchView, "搜索" + query,BaseTransientBottomBar.LENGTH_LONG).show();
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
return false;
}
});toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mSearchAutoComplete.isShown()) {
try {
mSearchAutoComplete.setText("");//清除文本
//利用反射调用收起SearchView的onCloseClicked()方法
Method method = searchView.getClass().getDeclaredMethod("onCloseClicked");
method.setAccessible(true);
method.invoke(searchView);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
} else {
finish();
}
}
});compile 'com.google.android:flexbox:0.2.3' <com.google.android.flexbox.FlexboxLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="8dp"
app:flexWrap="wrap"
app:alignItems="center"
app:alignContent="flex_start"
app:flexDirection="row"
app:justifyContent="flex_start">
<TextView
android:layout_width="wrap_content"
android:layout_height="35dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:layout_margin="5dp"
app:layout_alignSelf="flex_start"
android:text="程序员"
android:gravity="center"
android:textColor="#8bc34a"
android:background="@drawable/shape_tag_item"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="35dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:layout_margin="5dp"
app:layout_alignSelf="flex_start"
android:text="散文"
android:gravity="center"
android:textColor="#8bc34a"
android:background="@drawable/shape_tag_item"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="35dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:layout_margin="5dp"
app:layout_alignSelf="flex_start"
android:text="程序员"
android:gravity="center"
android:textColor="#8bc34a"
android:background="@drawable/shape_tag_item"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="35dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:layout_margin="5dp"
app:layout_alignSelf="flex_start"
android:text="IT"
android:gravity="center"
android:textColor="#8bc34a"
android:background="@drawable/shape_tag_item"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="35dp"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:layout_margin="5dp"
app:layout_alignSelf="flex_start"
android:text="苹果"
android:gravity="center"
android:textColor="#8bc34a"
android:background="@drawable/shape_tag_item"
/>
</com.google.android.flexbox.FlexboxLayout>app:flexWrap="wrap"app:flexDirection="row"app:justifyContent="flex_start"app:layout_order="2" app:layout_flexGrow="2"app:layout_flexShrink="2"<com.google.android.flexbox.FlexboxLayout
android:layout_width="300dp"
android:layout_height="wrap_content">
<TextView
android:layout_width="300dp"
android:layout_height="48dp"
app:layout_flexShrink="2"
android:background="@color/colorPrimary"/>
<TextView
app:layout_flexShrink="1"
android:layout_width="100dp"
android:layout_height="48dp"
android:background="@color/colorAccent"/>
</com.google.android.flexbox.FlexboxLayout>