我知道可以在可扩展列表视图中创建自定义组指示符。我也知道您可以使用setIndicatorBound()来定位默认组指示符。我没有看到并且无法实现自己的是将这两种效果结合起来。
有没有人知道这些可以一起完成的任何实际证据?
目前我可以创建一个自定义指标并移动它。但是当我使用setIndicatorBounds时,它总是移动到右边屏幕的一半。请检查此Related Post
我的问题是你真的可以实现吗?是否有证据,因为我没有找到。
答案 0 :(得分:7)
我使用以下教程实现了这一目标:http://android-adda.blogspot.com/2011/06/custom-expandable-listview.html
关键是这段代码:
DisplayMetrics metrics = new DisplayMetrics();
ExpandableListView expList = getExpandableListView();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int width = metrics.widthPixels;
//this code for adjusting the group indicator into right side of the view
expList.setIndicatorBounds(width - GetDipsFromPixel(50), width -
public int GetDipsFromPixel(float pixels)
{
// Get the screen's density scale
final float scale = getResources().getDisplayMetrics().density;
// Convert the dps to pixels, based on density scale
return (int) (pixels * scale + 0.5f);
}