这是我的代码。 升 当我运行它时,仿真器屏幕上没有任何内容。即使我为父母团体传递价值。
我也在getGroupView上设置了断点,但是这个方法没有被调用。
//父组中的值的类
public class ArrayForList
{
public static String[] grp ={"Car"};
}
//活动
public class ExpandableActivity extends Activity {
ExpandableListView ev;
ExpandableAdapter adp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_expandable);
ev = (ExpandableListView) findViewById(R.id.el);
ev.setAdapter(new ExpandableAdapter(this));
}
}
//适配器
public class ExpandableAdapter extends BaseExpandableListAdapter {
Context myContext;
public ExpandableAdapter(Context con)
{
this.myContext = con;
}
@Override
public Object getChild(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getChildId(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getChildView(int groupPosition, int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
return null;
}
@Override
public int getChildrenCount(int groupPosition) {
// TODO Auto-generated method stub
return 0;
}
@Override
public Object getGroup(int groupPosition) {
// TODO Auto-generated method stub
return null;
}
@Override
public int getGroupCount() {
// TODO Auto-generated method stub
return 0;
}
@Override
public long getGroupId(int groupPosition) {
// TODO Auto-generated method stub
return groupPosition;
}
@Override
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater inflater = (LayoutInflater) myContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.group_row, null);
}
TextView tvGroupName = (TextView) convertView.findViewById(R.id.tv_group);
tvGroupName.setText(ArrayForList.grp[groupPosition]);
return convertView;
}
@Override
public boolean hasStableIds() {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isChildSelectable(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
return false;
}
}
// xml group_row
<TextView
android:id="@+id/tv_group"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
// xml main
<ExpandableListView
android:id="@+id/el"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
答案 0 :(得分:8)
在ExpandableAdapter类中更改某些方法的返回值。例如getGroupCount()返回大小0,它更改为组大小。 getGroup(int groupPosition),它还返回null值,更改 groupPosition的组值。