我一直在尝试下面的android应用示例。
http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/ExpandableList2.html
我能够在一个孩子被点击时触发一个动作,但是我似乎不知道如何: 1.自定义每个孩子的标签。2.更改每个孩子的外观。(例如,我希望每个孩子都显示电话号码,然后在右侧显示两个图形按钮。每个按钮都有一个与之绑定的自定义操作。)
任何代码或链接将非常感谢。
发布于 2010-08-17 19:20:15
一种可能的解决方案可能是使用setViewBinder设置SimpleCursorTreeAdapter.ViewBinder,就像您为SimpleCursorAdapter设置的一样。
我完全不确定这是否会起作用,因为我还没有尝试过,但它似乎是相似的。我正在尝试解决同样的问题,所以如果它不起作用,我会尝试在这里发帖。
发布于 2013-09-03 15:57:24
您可以在SimpleCursorTreeAdapter中覆盖"bindChildView“。我就是这么做的:
class MyAdapter extends SimpleCursorTreeAdapter {
@Override
protected void bindChildView(View view, Context context, Cursor cursor, boolean isLastChild) {
// TODO Auto-generated method stub
super.bindChildView(view, context, cursor, isLastChild);
String title = cursor.getString(cursor.getColumnIndex(Alert.COL_DAY));
((TextView)view.findViewById(R.id.child_day)).setText(title);
}
public MyAdapter(Context context, Cursor cursor,
int groupLayout, String[] groupFrom, int[] groupTo,
int childLayout, String[] childFrom, int[] childTo) {
super(context, cursor, groupLayout, groupFrom, groupTo, childLayout, childFrom, childTo);
}
protected Cursor getChildrenCursor(Cursor groupCursor) {
int idColumn = groupCursor.getColumnIndex(Pill.COL_ID);
return Alert.list(db, groupCursor.getInt(idColumn), null, Alert.COL_DAY);
}
}不过,在创建适配器时,您必须向适配器提供childFrom和childTo参数,因此它将在bindChildView中使用它们。
发布于 2010-08-11 04:56:43
https://stackoverflow.com/questions/3452649
复制相似问题