2012-04-10 5 views
1

Wie kann ich die Vorschlagsliste für automatische Textanzeige anpassen? Ich muss Bild und Text in diesem zeigen, ich benutze baseadapter Klasse, die nicht funktioniert, um es unten anzupassen ist mein Code. Bitte sehen Sie es und geben Sie mir Vorschlag diese Dank zu lösen out ....Auto-Vervollständigen Sie Textansicht mit anpassen Vorschlagsliste in Android?

public class AutocompleteTextActivity extends Activity { 
     /** Called when the activity is first created. */ 

     static final String[] COUNTRIES = new String[] { "Afghanistan", "Albania", 
       "Algeria", "American Samoa", "Andorra", "India", "Indonesia" }; 
     static final Integer[] Images = { R.drawable.one, R.drawable.two, 
       R.drawable.three, R.drawable.four, R.drawable.five, R.drawable.six, 
       R.drawable.seven }; 

     private AutoCompleteTextView searchText; 

     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 
      searchText = (AutoCompleteTextView) findViewById(R.id.autocomplete_country); 
      searchText.setAdapter(new EfficientAdapter(this)); 

     } 

     private static class EfficientAdapter extends BaseAdapter { 
      private LayoutInflater li; 

      public EfficientAdapter(Context context) { 
       li = LayoutInflater.from(context); 
      } 

      public int getCount() { 
       return COUNTRIES.length; 
      } 

      public Object getItem(int position) { 
       return position; 
      } 

      public long getItemId(int position) { 
       return position; 
      } 

      public View getView(int position, View convertView, ViewGroup parent) { 
       ViewHolder holder; 
       if (convertView == null) { 
        convertView = li.inflate(R.layout.listitem, null); 
        holder = new ViewHolder(); 
        holder.name = (TextView) convertView.findViewById(R.id.text); 
        holder.image = (ImageView) convertView.findViewById(R.id.image); 
        convertView.setTag(holder); 
       } else { 
        holder = (ViewHolder) convertView.getTag(); 
       } 
       holder.name.setText(COUNTRIES[position]); 
       holder.image.setBackgroundResource(Images[position]); 
       return convertView; 
      } 

      static class ViewHolder { 
       TextView name; 
       ImageView image; 
      } 
     } 
    } 
+0

Was meinen Sie mit "nicht funktioniert"? .. erhalten Sie einen Fehler? oder ein leerer Bildschirm? .. oder was? – 5hssba

+0

Ich bekomme einen Fehler bei searchText.setAdapter (new EfficientAdapter (this)); Es zeigt, dass ich diesen Adapter nicht hinzufügen kann. – user03

+0

was ist der Fehler? Post die logcat .. – 5hssba

Antwort

0

this als Referenz Versuchen. Hoffe, das wird jemandem helfen!

Verwandte Themen