2017-01-05 6 views
0

私は現在、いくつかの固定文字列配列からオートコンプリートを使ってアンドロイドアプリケーションを作っています。Googleプレイスを使わないで自動補完の現在の場所はありますか?

オートコンプリートのテキストビューを押すと、「現在地」オプションのメニューがデフォルトとして(ユーザーが入力を開始する前に)開きますが、私はGoogleプレイスを使用していませんオートコンプリートの値は配列からのものです)どうすればこのことができますか?どうもありがとうございました!

答えて

3

あなたAutocompleteTextViewdefault suggestionで示したいと思いますどのような。

locationAutoCompleteという名前のAutocompleteTextViewがあるとします。 あなたは

locationAutoComplete.setText("current location"); 

して、デフォルトの提案を表示することができます。しかしsetText(String str)を使用してdefault suggestionを表示するAutocompleteTextview問題があります。メソッドを直接呼び出します。 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

関連する問題