views:

770

answers:

1

Hi guys,

after creating some menus with simple_list_item_1 (which worked very fine) I tried to replace this by simple_list_item_2, but my system throws around with exceptions...

Now I'm wondering how to create such a two-different-sized-line-entry for my list...is there any trap for beginners? Can someone please help me fixing my (small!?) problem?

My code looks like this:

ListAdapter listAdapter = new ArrayAdapter<String>(this,
        android.R.layout.simple_list_item_2, fileNames);
setListAdapter(listAdapter);

My String[] fileNames stores all strings to display in ascending order (does this matter for the functionality?!)

After unsuccessfully searching in some forums I now hope that someone of you can give me an useful suggestion.

nice greetings, poeschlorn

+2  A: 

simple_list_item_2 is different, instead of just a TextView it contains a TwoLineListItem containing two TextViews. ArrayAdapter is not going to work here, because the constructor you're using expects only a TextView; just look at the constructors. Instead you'll either have to create a custom adapter or use one that supports it like SimpleCursorAdapter or (I think) SimpleAdapter. This guy has a somewhat hacky solution that might work for you.

Daniel
hi, thanks for your response :) I'm going to try this out and tell you if/how it works
poeschlorn
hi again, I tried it out and it worked very well...the only thing I don't understand is, why is there a Map (or HashMap) needed?
poeschlorn
I guess because the intended use is really to pull data from things that are already in key-value pairs, so it makes sense for that purpose. No reason there couldn't be, say, a 2dArrayAdapter or something, though. By the way, here's another good sample usage:http://stackoverflow.com/questions/2227154/how-do-i-fill-a-listview-in-android-with-xml-or-json-data/2227377#2227377
Daniel
Hi, is it possible to give the simple_list_item_2 - objects an alternating background color?
poeschlorn