BaseExpandableListAdapter的疑问

android_Y 2012-04-06 11:30:03
public View getChildView(int groupPosition, int childPosition,boolean isLastChild, View convertView,ViewGroup parent)

1.convertView是代表当前显示的样子,那parent是代表什么?

public View getGroupView(int groupPosition, boolean isExpanded,View convertView, ViewGroup parent)

2.parent这个具体指什么?

3.组显示的箭头图片是否可以更换?如何更换?

4.
// 创建组/子视图
public TextView getGenericView(String s) {
// Layout parameters for the ExpandableListView
AbsListView.LayoutParams lp = new AbsListView.LayoutParams(
ViewGroup.LayoutParams.FILL_PARENT, 40);

TextView text = new TextView(a.this);
text.setLayoutParams(lp);
// Center the text vertically
text.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
// Set the text starting position
text.setPadding(36, 0, 0, 0);

text.setText(s);
return text;
}



@Override
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
String string = group.get(groupPosition);
LayoutInflater inflater = (LayoutInflater) a.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.c, null);
chil c = new chil();
c.tv = (TextView) convertView.findViewById(R.id.tv2);
c.tv.setText(string);
return convertView;
}

效率是否相同?

每题25分
...全文
208 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ayong120 2012-06-14
  • 打赏
  • 举报
回复
第三个 你可以自己重新写个布局文件 就像实现BaseAdapter 里面的getView的方法一样,然后在通过在getGroupView方法中的 boolean isExpanded这个布尔值 来设置展开和不展开时 的图片,这样应该可以达到你要的效果 。
j_f0001 2012-04-06
  • 打赏
  • 举报
回复
1.是convertView是代表当前显示的样子,那parent是代表组的名称,如QQ群组,如果一个人加入了3个群(群名分别为:“小学同学”,“大学同学”,“同事),各个群下面有好多好友,显示好友的就是convertView,而显示群名称的就是parent
2.parent具体指什么,在1里面已经很明确表示了。
3.当然可以替换,最好是使用替换系统样式的方式,代码如下:
<style name="CustomExpandableListView"
parent="@android:style/Widget.ExpandableListView">
<item name="android:groupIndicator">@drawable/expander_group</item>
</style>

expander_group 定义如下
<style name="CustomExpandableListView"parent="@android:style/Widget.ExpandableListView">
<item name="android:groupIndicator">@drawable/expander_group</item>
</style>
4.效果不一样,一个是修改组名称的背景控件样式,一个是修改成员显示的样式
kity 2012-04-06
  • 打赏
  • 举报
回复
解释:parent The parent that this view will eventually be attached to
parent是指当前Item所属的view,比如在main.xml里面定义了Expendlistview,那parent就是这个main.xml对应的视图。
(1)getChildView 中parent就是groupview,
(2)getGroupView 中parent就是Expendlistview
(3)http://blog.csdn.net/timchen6824/article/details/6762996
(4)个人认为getGroupView里有视图缓存,效率高些,
求高人拍砖啊。。。。
android_Y 2012-04-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
1.是convertView是代表当前显示的样子,那parent是代表组的名称,如QQ群组,如果一个人加入了3个群(群名分别为:“小学同学”,“大学同学”,“同事),各个群下面有好多好友,显示好友的就是convertView,而显示群名称的就是parent
2.parent具体指什么,在1里面已经很明确表示了。
3.当然可以替换,最好是使用替换系统样式的方式,代码如下:
<style n……
[/Quote]
第三个没看懂怎么用

80,493

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧