2013-05-07 2 views
0

В моей ListView, я сохранить данные, как это:Set Текст TextView в ListView

public void listview_fuellen(){ 
    DBHelper db = new DBHelper(this); 

    ListView lv = (ListView) findViewById(R.id.lvKinder); 
    Cursor c = db.select(); 
    int count = c.getCount(); 

    TextView tv = (TextView) findViewById(R.id.secondLine); 
    List<String> auswahl = new ArrayList<String>(); 
    List<String> auswahl1 = new ArrayList<String>(); 
    int i = 0; 
    System.out.println("$$$$$$$$$$$$$$$$$$$$$$$1" + c.getCount()); 
    while(c.moveToNext()) 
    { 

     auswahl.add(c.getString(c.getColumnIndex("name"))); 
     auswahl1.add(" " + i); 
     System.out.println("SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS" + auswahl.get(i).toString()); 

     i++; 
    } 

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.list_black_text,R.id.firstLine, auswahl); 
    //ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this, R.layout.list_black_text,R.id.secondLine, auswahl1); 

    lv.setAdapter(adapter); 

} 

Теперь я попытался макет для моей ListView здесь:

http://android-developers.blogspot.co.at/2009/02/android-layout-tricks-1.html

Теперь, как установить значения для второй строки в каждом элементе ListView или значке?

EDIT:

Я попробовал, как это сейчас, но нет записей в моем ListView тогда.

ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>(); 
    HashMap<String, String> map = new HashMap<String, String>();; 




    int i = 0; 
    System.out.println("$$$$$$$$$$$$$$$$$$$$$$$1" + c.getCount()); 
    while(c.moveToNext()) 
    { 
     //map = new HashMap<String, String>(); 
     map.put("name",c.getString(c.getColumnIndex("name"))); 
     map.put("datum", c.getString(c.getColumnIndex("zeit"))); 


     i++; 
    } 
    mylist.add(map); 

    SimpleAdapter mSchedule = new SimpleAdapter(this, mylist, R.layout.list_black_text, new String[] { "datum", 
     "name" }, new int[] { R.id.firstLine, R.id.secondLine }); 

    lv.setAdapter(mSchedule); 
    setListAdapter(mSchedule); 

Что я сделал не так?

+3

использовать пользовательские ListView двухкомпонентной пользовательский адаптер – Raghunandan

+0

Можете ли вы показать мне пример? Как вы видите, я пробовал с другим адаптером, но когда я добавляю его в список, отображается только один из них. – user896692

+0

Вот действительно хорошее объяснение, как использовать адаптеры и какой из них лучше: http: //www.piwai. info/android-adapter-good-practices/ – hardartcore

ответ

0

Для этого вы можете создать пользовательский адаптер, а затем вы можете установить значения для второй строки в каждом элементе ListView.

Вы можете проверить эту ссылку http://devtut.wordpress.com/2011/06/09/custom-arrayadapter-for-a-listview-android/

+0

Можете ли вы посмотреть мое редактирование, пожалуйста? Пробовал ваше предложение и использовал SimpleAdapter, но он все еще не работает. – user896692

+0

какая ошибка вы получаете? –

+0

Нет ошибки, просто нет элемента из базы данных, показанной – user896692

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