【问题标题】:Android GridView - how to setColumnWidth in dpAndroid GridView - 如何在 dp 中设置ColumnWidth
【发布时间】:2011-09-03 18:43:54
【问题描述】:

我有一个 GridView,根据具体情况,它可能有 3 个或 4 个 列。列宽需要根据 3 还是 4 改变 正在显示。因此,我无法将宽度硬编码到 包含 GridView 的布局 XML,必须通过 setColumnWidth 命令。

问题是setColumnWidth只能设置像素宽度, 我想在 dp 中指定宽度。我该怎么做,或者我必须 创建2个布局,将列宽硬编码到dp中的每个布局中?

谢谢

【问题讨论】:

    标签: android gridview


    【解决方案1】:

    您可以使用此代码将 dp 转换为 px:

    Resources r = getResources();
    float px = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 14, r.getDisplayMetrics());
    

    但是由于你将列数从 3 更改为 4,反之亦然,所以列宽不会自行调整?

    【讨论】:

    • 谢谢,成功了。列宽也会自行调整,但我更喜欢完全控制事物的外观......
    猜你喜欢
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 2016-05-02
    • 2012-09-25
    • 1970-01-01
    • 2011-10-10
    • 2012-06-16
    • 2014-01-23
    相关资源
    最近更新 更多