0

Я попытался AutoCompleteTextView и получать значения, но я не могу получить значение в храповом случае AutoCompleteTextView это мой макетAndroid AutoCompleteTextView нажмите не работает

<AutoCompleteTextView 
    android:id="@+id/atv_places" 
    android:layout_width="match_parent" 
    android:layout_height="40dp" 
    android:layout_below="@+id/lin" 
    android:layout_gravity="center" 
    android:layout_marginLeft="25dp" 
    android:layout_marginRight="25dp" 
    android:layout_marginTop="10dp" 
    android:background="@drawable/et_chat" 
    android:drawableLeft="@drawable/searchblue" 
    android:drawablePadding="4dp" 
    android:dropDownVerticalOffset="5dp" 
    android:dropDownWidth="match_parent" 
    android:hint="Search contacts..." 
    android:scrollHorizontally="true" 
    android:textColor="@color/Black" 
    android:textCursorDrawable="@drawable/color_cursor" 
    android:textSize="16dp" 
    android:visibility="gone" /> 

и мой код события нажмите, чтобы получить значение Я заполняю через адаптер. Я не могу получить нажатые значения или не могу работать с тостом.

atvPlaces = (AutoCompleteTextView) v.findViewById(R.id.atv_places); 

    mTxtPhoneNo = (AutoCompleteTextView) v.findViewById(R.id.mmWhoNo); 
    mAdapternew = new SimpleAdapter(getActivity(), mPeopleList, 
      R.layout.row, new String[] { "Name", "Phone" }, new int[] { 
        R.id.textView1, R.id.textView2 }); 
    atvPlaces.setAdapter(mAdapternew); 
    atvPlaces.setThreshold(1); 

    atvPlaces.setOnItemClickListener(new OnItemClickListener() { 

     @SuppressWarnings("unchecked") 
     @Override 
     public void onItemClick(AdapterView<?> av, View arg1, int index, 
       long arg3) { 

      Toast.makeText(getActivity(), "auto", Toast.LENGTH_LONG).show(); 
      Map<String, String> map = (Map<String, String>) av.getItemAtPosition(index); 

      String name = map.get("Name"); 
      String number = map.get("Phone"); 
      atvPlaces.setText(""+name+"<"+number+">"); 

     } 



    }); 
+0

не использует Тосты для отладки, используйте журнал. * Методы вместо – pskink

ответ

1

Я не понимаю, что является проблемой в вашем коде, но ниже кода, который я сделал из вашего кода и его работоспособности, проверьте сами.

AutoCompleteTextView atvPlaces = (AutoCompleteTextView) findViewById(R.id.atv_places); 
     ArrayList<HashMap<String,String>> mPeopleList=new ArrayList<>(); 
     HashMap h1 = new HashMap<String, String>(); 
     h1.put("Name","name1"); 
     mPeopleList.add(h1); 

     HashMap h2 = new HashMap<String, String>(); 
     h2.put("Name","name2"); 
     mPeopleList.add(h2); 

     final SimpleAdapter myAdapter = new SimpleAdapter(this, mPeopleList, 
       android.R.layout.simple_spinner_dropdown_item, new String[] { "Name"}, new int[] { 
       android.R.id.text1}); 

     atvPlaces.setAdapter(myAdapter); 
     atvPlaces.setThreshold(1); 

     atvPlaces.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> av, View arg1, int index, 
            long arg3) { 

       Toast.makeText(MainActivity.this, "auto", Toast.LENGTH_LONG).show(); 
       HashMap<String, String> map = (HashMap<String, String>) av.getItemAtPosition(index); 

       String name = map.get("Name"); 
       String number = map.get("Phone"); 

      } 



     }); 
+0

получает ошибку при добавлении OnItemSelectedListener –

+0

каких ошибки после журнала .Please. – IshRoid

+0

нет ошибки сейчас, но coudn't получить значение. –

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