我试图在Fragment中使用建议(过滤器)实现SearchView,但我还没有管理它.我几乎尝试了每个教程,但没有任何方法适合我.我将不胜感激任何帮助.谢谢
XML ......
<!--appBar layout-->
<android.support.design.widget.AppBarLayout
android:id="@+id/appBarLayout"
android:fitsSystemWindows="true"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize">
<!--searchView layout-->
<android.support.v7.widget.SearchView
android:id="@+id/search_view"
app:layout_scrollFlags="scroll|enterAlways"
android:iconifiedByDefault="false"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:closeIcon="@drawable/ic_clear_white_18dp"
app:searchIcon="@drawable/ic_search_white_24dp"
app:queryHint="@string/search_contact"
app:iconifiedByDefault="false"
android:background="@color/colorPrimary"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />
</android.support.design.widget.AppBarLayout>
<!-- recycler view-->
<android.support.v7.widget.RecyclerView
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
Run Code Online (Sandbox Code Playgroud)
分段
@Override
public View onCreateView(LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_contact_list, container, false);
searchView = (SearchView)view.findViewById(R.id.search_view);
fabButton = (FloatingActionButton)view.findViewById(R.id.fab_button);
//recycler view
recyclerView = (RecyclerView)view.findViewById(R.id.recycler_view);
recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
contacts = SugarRecord.listAll(Contact.class);
contactsAdapter = new ContactsAdapter(getActivity(), contacts);
recyclerView.setAdapter(contactsAdapter);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override …Run Code Online (Sandbox Code Playgroud) android adapter searchview recycler-adapter android-recyclerview