可展开列表视图可以移动自定义图标(指示符)吗?

时间:2011-09-17 20:22:39

标签: java android

我知道可以在可扩展列表视图中创建自定义组指示符。我也知道您可以使用setIndicatorBound()来定位默认组指示符。我没有看到并且无法实现自己的是将这两种效果结合起来。

有没有人知道这些可以一起完成的任何实际证据?

目前我可以创建一个自定义指标并移动它。但是当我使用setIndicatorBounds时,它总是移动到右边屏幕的一半。请检查此Related Post

我的问题是你真的可以实现吗?是否有证据,因为我没有找到。

1 个答案:

答案 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);
    }