我目前在我的android应用程序项目中使用主/细节流。现在我不仅想创建一个只有一个字符串的项目列表。我想将标准的DummyItem类更改为以下内容:
/**
* A dummy item representing a piece of content.
*/
public static class DummyItem {
public String id;
public String content;
public String subtext; //Added subtext variable here
public DummyItem(String id, String content, String subtext) {
this.id = id;
this.content = content;
this.subtext = subtext; //And here
}
@Override
public String toString() {
return content;
}
}
在ItemListFragment类中,我预定义了这行代码,用于创建列表的适配器:
setListAdapter(new ArrayAdapter<DummyContent.DummyItem>(getActivity(),
android.R.layout.simple_list_item_activated_1,
android.R.id.text1,
DummyContent.ITEMS));
但是我想把android.R.layout.simple_list_item_activated_1
改成android.R.layout.simple_list_item_activated_2
以android.R.id.text1
为内容,android.R.id.text2
为subtext
变量。
有可能这样做吗?
重写ArrayAdapter的getView()方法。应该是这样的:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
//super call to create / recycle the view
View view = super.getView(position, convertView, parent);
TextView textView1 = (TextView) view.findViewById(android.R.id.text1);
textView1.setText(getItem(position).getContent());
TextView textView2 = (TextView) view.findViewById(android.R.id.text2);
textView2.setText(getItem(position).getSubtext());
return view;
}
下面是一些关于listview的进一步阅读,包括示例:http://www.vogella.com/tutorials/AndroidListView/article.html