搜索自动完成android

AHM200

我对 android 很陌生,我被要求使用自动完成功能构建一个搜索,如图所示 在此处输入图片说明

我在 android.support.v7.widget.searchview 中尝试了 SearchAutoComplete 但我无法得到想要的结果所以任何帮助这就是我尝试过的

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.main_menu,menu);
    MenuItem searchItem = menu.findItem(R.id.app_bar_search);

    SearchView searchView = (SearchView) searchItem.getActionView();
    searchView.setIconifiedByDefault(true);

    SearchView.SearchAutoComplete searchAutoComplete = searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text);
    searchView.setBackgroundColor(Color.WHITE);
    searchAutoComplete.setAdapter(new CustomAdapter(this,new ArrayList<>(Arrays.asList(languages))));

    searchAutoComplete.setOnItemClickListener((adapterView, view, i, l) -> {
        String shopName = ((TextView)view.findViewById(R.id.shop_name)).getText().toString();
        Toast.makeText(this,shopName,Toast.LENGTH_SHORT).show();
    });
    return true;
}

这是 xml

<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:id="@+id/app_bar_search"
    android:icon="@drawable/ic_search_black_24dp"
    android:title="Search"
    app:actionViewClass="android.support.v7.widget.SearchView"
    app:showAsAction="always|withText|collapseActionView"/>

这就是结果 在此处输入图片说明

人性化

的默认外观android.support.v7.widget.searchview不是您想要的。但是,这是android中的常见视图,并且有许多不错的库。

我建议你使用一个可以帮助你喜欢这个的库https://github.com/arimorty/floatingsearchview

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章