Android BSearchEdit 搜索结果选择框

Posted YangBryant

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android BSearchEdit 搜索结果选择框相关的知识,希望对你有一定的参考价值。

EditText搜索结果下拉框、自动or回调模式、可diy、使用超简便 (EditText search results drop-down box, auto or callback mode, diy, easy to use)

#支持自动展示搜索条目

#支持手动展示搜索条目(可自己记录历史数据,可等请求回调后弹出搜索条目)

#背景支持颜色,selector,图片等资源属性

Github地址

YangsBryant/BSearchEdit

(Github排版比较好,建议进入这里查看详情,如果觉得好,点个star吧)

 

引入module

allprojects {
    repositories {
        google()
        jcenter()
        maven { url \'https://www.jitpack.io\' }
    }
}

 

implementation \'com.github.YangsBryant:BSearchEdit:1.0.4\'


BSearchEdit属性大全

方法名 属性
build() 参数设置完毕,一定要build一下
setTimely(boolean timely) 是否自动展示搜索条目,默认true
showPopup() 手动弹出搜索条目,当setTimely为true时失效
setTextClickListener(TextClickListener textClickListener) 点击监听器
setTextWidth(int textWidth) 设置文本宽度,单位dp
setTextHeight(int textHeight) 设置文本高度,单位dp
setTextSize(int textSize) 设置文本字体大小
setTextColor(int textColor) 设置文本颜色
setLine_height(int line_height) 设置线条高度,单位dp
setLine_width(int line_width) 设置线条宽度,单位dp
setIsLine(boolean isLine) 是否显示分割线
setPopup_bg(int popup_bg) 设置窗体背景,可以是图片,颜色,selector等资源

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

关键代码

 EditText editText = findViewById(R.id.edit_text);//获取一个EditText
 bSearchEdit = new BSearchEdit(this,editText,200);//第三个必须要设置窗体的宽度,单位dp
 bSearchEdit.build();
 //更新数据
 bSearchEdit.setSearchList(list);

#Tips:遇到is your activity running? 那是因为activity还未创建,showPopup()调用的太早了


演示代码

public class MainActivity extends AppCompatActivity {

    private ArrayList<String> list;
    private BSearchEdit bSearchEdit;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        list = new ArrayList<>();
        list.add("江西省赣州市");
        list.add("广东省深圳市");
        list.add("广东省珠海市");

        EditText editText = findViewById(R.id.edit_text);
        bSearchEdit = new BSearchEdit(this,editText,200);
        bSearchEdit.build();
        bSearchEdit.setSearchList(list);

        bSearchEdit.setTextClickListener(new BSearchEdit.TextClickListener() {
            @Override
            public void onTextClick(int position, String text) {
                Toast.makeText(MainActivity.this,text,Toast.LENGTH_SHORT).show();
            }
        });

        Button button01 = findViewById(R.id.button01);
        button01.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                list.clear();
                list.add("小米 9pro");
                list.add("华为 mate30");
                list.add("vivo nex3");
                list.add("iPhone 11");
                bSearchEdit.setSearchList(list);
                Toast.makeText(MainActivity.this,"更新数据成功",Toast.LENGTH_SHORT).show();
            }
        });

        Button button02 = findViewById(R.id.button02);
        button02.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                list.clear();
                list.add("瑞士民众抵制5G");
                list.add("威马汽车起火");
                list.add("王者荣耀新英雄西施");
                list.add("黄渤出演姜子牙");
                list.add("北京天空飞机刷屏");
                list.add("Kimi名字由来");
                bSearchEdit.setSearchList(list);
                Toast.makeText(MainActivity.this,"更新数据成功",Toast.LENGTH_SHORT).show();
            }
        });
    }
}

#演示代码工程里有

以上是关于Android BSearchEdit 搜索结果选择框的主要内容,如果未能解决你的问题,请参考以下文章

android: CheckedTextView 不能检查?

不想被「推荐算法」控制,你还有这个搜索引擎可以选

Android中。如何用RadioButton设定一个4列12行的单选表格。

如何实现android中三个单选按钮横向排列且只能选一个?

如何使用eclipse新建android app并测试运行结果

android单选按钮