开源一个好看的安卓搜索框

事先声明

本项目基于 wenwenwen888/SearchDialog: 仿bilibili搜索框效果(三句代码实现) (github.com)

只是因为这个大佬的项目比较旧,我在他代码的基础上进行改进,适配androidx,同时添加了关键词联想功能。

效果如下

关键词联想功能

如何使用

引入依赖

 implementation 'com.github.xiaoyou-xblog:SearchDialog:v2.2'

实例化

 SearchFragment<T> searchFragment = SearchFragment.newInstance();

回调设置

searchFragment.setOnSearchClickListener(new IOnSearchClickListener<String>() {
    /**
    *  点击搜索按钮时触发
    * @param keyword 搜索的关键词
    */
    @Override
    public void onSearchClick(String keyword) {
        searchInfo.setText(keyword);
    }

    /**
     *  点击关键词预测链接时触发
     * @param data 链接携带的数据
     */
    @Override
    public void onLinkClick(String data) {
        searchInfo.setText(data);
    }

    /**
   	*  当搜索框内容改变时触发
    * @param keyword 搜索的关键词
    */
    @Override
    public void onTextChange(String keyword) {
        // 数据初始化
        List<CustomLink<String>> data = new ArrayList<>();
        data.add(new CustomLink<>("链接1","数据1"));
        data.add(new CustomLink<>("链接2","数据2"));
        data.add(new CustomLink<>("链接3","数据3"));
        // 这里我们设置关键词预测显示的内容
        searchFragment.setLinks(data);
    }
});

显示搜索框

searchFragment.showFragment(getSupportFragmentManager(),SearchFragment.TAG);

github地址

欢迎大家star

xiaoyou-xblog/SearchDialog (github.com)