Я пытаюсь реализовать что-то похожее на функцию facebook/twitter, которая показывает список пользователей при добавлении знака «@». Моя проблема в том, что я не знаю, как реализовать этот вид всплывающего или плавающего представления. это диалог или фрагмент?Отображение списка всплывающих окон android
ответ
Существует что-то известное как ListPopUpWindow в андроиде, который может решить вашу проблему. Я привел пример ниже, как вы можете его инициировать. Создайте собственный XML-файл listadapter и row. Затем передайте его в popup.setAdapter, например, как вы обрабатываете обычный список в android.
private void initiatePopupWindow(View anchor) {
try {
Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
ListPopupWindow popup = new ListPopupWindow(this);
popup.setAnchorView(anchor);
popup.setWidth((int) (display.getWidth()/(1.5)));
popup.setAdapter(new CustomAdapterForService(getApplicationContext(), R.layout.rowforservice, listCity));
popup.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View view, int position, long id3) {
//do what you need to do when you click on a popup list item
}
});
popup.show();
} catch (Exception e) {
e.printStackTrace();
}
}
В конце концов, откуда вам нужно позвонить, назовите его якорем. Якорь - это представление, может быть кнопка или изображение или что-то там, где вам нужно всплывать список. Именно так.
initiatePopupWindow(yourOwnView)
Это работает для меня. Если какая-либо проблема не стесняется спрашивать. Благодарю.
Спасибо, это именно то, что я ищу. Вы экономите мой день – Sanny
Всегда приветствую .... –
Autocomplete textview - ваш ответ. проверьте ссылку http://stackoverflow.com/a/12795851/1061944 –
Спасибо @MurtazaKhursheedHussain. Я проверял ссылку на ur, но я не думаю, что AutoCompleteTextView это sth, которого я ищу. Потому что у него есть предустановленные данные. PLS см. фото я добавил в вопросе. Спасибо – Sanny
Вы всегда можете добавить данные динамически. Это был пример реализации –