继TextInputLayout 之后,继续研究Material SearchView的使用。下面附上效果图:
动态图:
静态效果图:
1.材料设计风格的
2.开源框架的:
一 在Toolbar 中直接添加SearchView :
- 1.menu_main.xml 添加相关的布局文件
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
app:showAsAction="never"/>
<item android:id="@+id/action_search"
android:title="Search"
android:icon="@drawable/abc_ic_search_api_mtrl_alpha"
app:showAsAction="ifRoom|collapseActionView"
app:actionViewClass="android.support.v7.widget.SearchView"/>
</menu>
- 2.activity 界面中的调用
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main,menu);
// Retrieve the SearchView and plug it into SearchManager
SearchView searchView = (SearchView)MenuItemCompat.getActionView(menu.findItem(R.id.action_search));
EditText searchEditText = (EditText) searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text);
searchEditText.setTextColor(getResources().getColor(R.color.white));
searchEditText.setHintTextColor(getResources().getColor(R.color.white));
SearchManager searchManager = (SearchManager)getSystemService(SEARCH_SERVICE);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
return true;
}
注意:其中改变serchView hint的颜色,字体颜色的方法
searchEditText.setTextColor(getResources().getColor(R.color.white));
searchEditText.setHintTextColor(getResources().getColor(R.color.white));
SearchManager searchManager = (SearchManager)getSystemService(SEARCH_SERVICE);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
二 直接使用开源库的 SearchView:
下面是开源库的地址:https://github.com/MiguelCatalan/MaterialSearchView,参照了它的使用方法。
最后明天要放假了,原谅我的草草了事!好匆忙的感觉。。。