我在ExpandableListView中使用自己的图标图像作为指示器,但是图标似乎被拉伸了,我尝试将图像文件放置在/drawable和/drawable-hdpi中,但没有成功。如果我不使用自己的图标,则内置的Android图标看起来很好,所以我想知道是否存在图像尺寸限制,或者我是否做错了什么?
谢谢!
谢谢!
无论您将什么图像用作组指示器,都应将其制作成9 patch(xxx.9.png)图像,并将其可拉伸区域设置为边框像素周围的区域(这可能是透明的)。这样可以防止图像从中间被拉伸。
mListView.setGroupIndicator(null);
(2) 在组布局中包含我的指示器。 <ImageView
android:id="@+id/help_group_indicator"
android:layout_width="@dimen/help_group_indicator_dimension"
android:layout_height="@dimen/help_group_indicator_dimension"
android:layout_marginTop="@dimen/help_group_indicator_dimension"
android:src="@drawable/down_icon" />
(3)
mListView.setOnGroupClickListener(new OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent, View clickedView, int groupPosition, long rowId) {
ImageView groupIndicator = (ImageView) clickedView.findViewById(R.id.help_group_indicator);
if (parent.isGroupExpanded(groupPosition)) {
parent.collapseGroup(groupPosition);
groupIndicator.setImageResource(R.drawable.down_icon);
} else {
parent.expandGroup(groupPosition);
groupIndicator.setImageResource(R.drawable.up_icon);
}
return true;
}
});