BSearchEdit
Введение модуля:
allprojects {
repositories {
google()
jcenter()
maven { url 'https://www.jitpack.io' }
}
}
implementation 'com.github.YangsBryant:BSearchEdit:1.0.4'
Поддержка автоматического отображения элементов поиска.
Поддержка ручного отображения элементов поиска (можно самостоятельно записывать историю данных, можно отображать элементы поиска после получения обратного вызова).
Поддерживает использование цвета фона, селектора и других ресурсов для атрибутов.
Динамические свойства BSearchEdit:
Метод | Свойство |
---|---|
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) | Установить фон окна, может быть изображение, цвет, селектор и другие ресурсы |
Ключевой код:
EditText editText = findViewById(R.id.edit_text);//Получить EditText
bSearchEdit = new BSearchEdit(this,editText,200);//Третий параметр должен установить ширину окна, в dp
bSearchEdit.build();
//Обновить данные
bSearchEdit.setSearchList(list);
Советы: если появляется сообщение «is your activity running?», это означает, что активность ещё не создана, и вызов 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();
}
});
}
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )