我实现了我的SimpleExpandableListAdapter
,我正在尝试自定义章节标题。要执行此操作,我会为 groupTo 参数传递constructor自定义TextView
的ID:
setListAdapter( new SimpleExpandableListAdapter(this,
groupsData,
android.R.layout.simple_expandable_list_item_1,
new String[]{SECTION},
new int[]{R.id.list_group_title},
innerData,
0,
null,
new int[]{}){ /*my code here*/ });
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/list_group_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="20dip" />
问题是,什么都没有出现!整个事情都是空白的,就好像视野不存在一样。 有什么想法,或者我能读到的任何链接来解决这个问题?谢谢!
答案 0 :(得分:0)
MyAdapter ma = new MyAdapter(this,groupsData,android.R.layout.simple_expandable_list_item_1,new String[]{SECTION}, new int[]{R.layout.list_group_title},innerData,0,null,new int[]{});
setListAdapter(ma);
private static class MyAdapter extends SimpleExpandableListAdapter
{
LayoutInflater layoutInflater;
int title;
public MyAdapter(Context context,List<? extends Map<String, ?>> groupData,int groupLayout,String[ ] groupFrom,int[ ] groupTo,List<? extends List<? extends Map<String, ?>>> childData,int childLayout,String[ ] childFrom, int[ ] childTo)
{
super(context,groupData,groupLayout,groupFrom,groupTo,childData,childLayout,childFrom,childTo);
title = groupTo[0];
layoutInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public View getGroupView(int groupPosition,boolean isExpanded,View convertView,ViewGroup parent)
{
return (TextView)layoutInflater.inflate(title,null);
}
}
在getGroupView
中充气它可以解决问题。不过,我不明白为什么它不会自动传递给super
构造函数。