Java 可扩展列表视图您可以移动自定义图标(指示器)吗?

Java 可扩展列表视图您可以移动自定义图标(指示器)吗?,java,android,Java,Android,我知道可以在可展开的列表视图中创建自定义组指示器。我还知道,您可以使用setIndicatorBound()定位默认组指示符。我没有看到,也无法实现的是将这两种效果结合起来 有谁知道有任何实际证据证明这些都可以同时进行吗 目前,我可以创建一个自定义指示器并移动它。但是当我使用setIndicatorBounds时,它总是移动到屏幕右侧的一半。检查这个 我的问题是你真的能做到吗?任何地方都有证据,因为我没有找到证据。我通过以下教程实现了这一点: 关键是这个代码: DisplayMetric

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

有谁知道有任何实际证据证明这些都可以同时进行吗

目前,我可以创建一个自定义指示器并移动它。但是当我使用setIndicatorBounds时,它总是移动到屏幕右侧的一半。检查这个


我的问题是你真的能做到吗?任何地方都有证据,因为我没有找到证据。

我通过以下教程实现了这一点:

关键是这个代码:

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

我通过以下教程实现了这一点:

关键是这个代码:

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

谢谢谢谢谢谢!!你是个活生生的储蓄者!我花了48个小时研究如何完成这一点,那个博客让我一目了然。ThanksSide注意:我认为您应该将像素转换为dp。您的答案正确-方法和参数的标签是错误的。查看此处,您将看到
setIndicatorBounds()
以像素为参数。谢谢谢谢!你是个活生生的储蓄者!我花了48个小时研究如何完成这一点,那个博客让我一目了然。ThanksSide注意:我认为您应该将像素转换为dp。您的答案正确-方法和参数的标签是错误的。查看此处,您将看到
setIndicatorBounds()
以像素为参数。