2017-01-05 2 views
0

В настоящее время я создаю приложение для Android, с автозаполнением из некоторого массива фиксированных строк.Текущее местоположение в автозаполнении без Google Места?

Когда пользователь нажимает на авто полный текст, я хочу, чтобы меню с опцией «текущее местоположение» было открыто по умолчанию (до того, как пользователь даже начал вводить текст), но я не использую Google Места (так как значения автозаполнения из массива), так как я могу это сделать? Большое спасибо!

ответ

3

То, что вы хотите показать в вашем AutocompleteTextViewdefault suggestion.

Предположим, у вас есть AutocompleteTextView с именем locationAutoComplete. Вы можете показать предложение по умолчанию на

locationAutoComplete.setText("current location"); 

Но есть проблема в AutocompleteTextview, чтобы показать default suggestion с помощью setText(String str); метод напрямую. Всякий раз, когда метод setText(String str) называется, он отключает AutocompleteTextView.

Чтобы избежать этого, напишите свой код, как показано ниже.

locationAutoComplete.postDelayed(new Runnable() { 
     @Override 
     public void run() { 
      locationAutoComplete.showDropDown(); 
     } 
    },500); 
    locationAutoComplete.setText("current location"); 
    locationAutoComplete.setSelection(locationAutoComplete.getText().length()); 
+0

, спасибо, но я не хочу, чтобы он появлялся в тексте, я хочу, чтобы при нажатии пользователем на автоматическое полное текстовое представление, меню будет открыт, и появится возможность «текущего местоположения». вы знаете, как это сделать? – user7366106

+0

Я думаю, что могу помочь вам. Но, пожалуйста, дайте возможность помочь вам в первую очередь. Измените вопрос и добавьте код своей деятельности. Тогда я или кто-то сможет вам помочь – ash12

1

Если вы только с помощью фиксированного набора строк, вы можете использовать AutoCompleteTextView:

String[] yourStrings; // However you get your strings 

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
    android.R.layout.simple_dropdown_item_1line, yourStrings); 
AutoCompleteTextView textView = (AutoCompleteTextView) 
    findViewById(R.id.your_text_view); 
textView.setAdapter(adapter); 
+0

Как сделать опцию «текущее местоположение» по умолчанию в меню? – user7366106

+0

У вас есть полный контроль над списком, поэтому просто добавьте его в свой список. – ianhanniballake

+0

, но я хочу, чтобы он появился до того, как пользователь даже начал набирать любую букву – user7366106

Смежные вопросы