2015-05-06 7 views
0

Я пытаюсь реализовать что-то похожее на функцию facebook/twitter, которая показывает список пользователей при добавлении знака «@». Моя проблема в том, что я не знаю, как реализовать этот вид всплывающего или плавающего представления. это диалог или фрагмент?Отображение списка всплывающих окон android

enter image description here

+0

Autocomplete textview - ваш ответ. проверьте ссылку http://stackoverflow.com/a/12795851/1061944 –

+0

Спасибо @MurtazaKhursheedHussain. Я проверял ссылку на ur, но я не думаю, что AutoCompleteTextView это sth, которого я ищу. Потому что у него есть предустановленные данные. PLS см. фото я добавил в вопросе. Спасибо – Sanny

+0

Вы всегда можете добавить данные динамически. Это был пример реализации –

ответ

1

Существует что-то известное как 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) 

Это работает для меня. Если какая-либо проблема не стесняется спрашивать. Благодарю.

+0

Спасибо, это именно то, что я ищу. Вы экономите мой день – Sanny

+0

Всегда приветствую .... –