2012-11-19 4 views
3

Je suis en train de créer une application pour Android dans laquelle je veux garder AutoCompleteTextView pour montrer la suggestion pour réduire les efforts des utilisateurs. Actuellement, je teste avec un petit code que j'ai écrit mais je ne reçois pas de suggestions. Je suis en train de mettre le code, S'il vous plaît aidez-moi à trouver l'erreur.AutoCompleteTextView ne montrant pas la suggestion

public class MainActivity extends Activity { 

private ArrayList<Map<String, String>> objects; 
private AutoCompleteTextView autotextView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    autotextView = (AutoCompleteTextView) findViewById(R.id.autocompleteView); 

    objects = new ArrayList<Map<String, String>>(); 

    Map<String, String> NamePhoneType = new HashMap<String, String>(); 
    NamePhoneType.put("Name", "John"); 
    NamePhoneType.put("Phone", "1234567890"); 
    objects.add(NamePhoneType); 
    NamePhoneType.put("Name", "Steve"); 
    NamePhoneType.put("Phone", "4567890123"); 
    objects.add(NamePhoneType); 

    ArrayAdapter<Map<String, String>> am = new ArrayAdapter<Map<String, String>>(
      this, R.layout.list_item, objects); 

    autotextView.setAdapter(am); 
} 
} 

list_item.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 

<TextView 
    android:id="@+id/ccontName" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Name" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:textColor="#A5000000" /> 

<TextView 
    android:id="@+id/ccontNo" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@+id/ccontName" 
    android:text="Phone" 
    android:textAppearance="?android:attr/textAppearanceMedium" 
    android:textColor="#A5000000" /> 

</RelativeLayout> 
+0

http://stackoverflow.com/questions/12691679/android-autocomplete-textview -similar-to-the-facebook-app – Omarj

+1

Je suppose que vous devriez écrire votre propre ArrayAdapter pour gérer les éléments de la liste. En fait, je suis surpris que l'application n'a pas planté. – yahya

Répondre

3

J'ai eu le même problème que le vôtre. Mais réussir à le résoudre en ajoutant cette

am.notifyDataSetChanged(); 

après

ArrayAdapter<Map<String, String>> am = new ArrayAdapter<Map<String, String>>(this, R.layout.list_item, objects); 
    autotextView.setAdapter(am); 

Espérons que cela vous aidera :)