android Imageview布局参数在dip中?

发布于 2024-09-16 06:39:06 字数 342 浏览 9 评论 0原文

我正在使用以下代码:

ImageView i = new ImageView(mContext);

i.setImageResource(mImageIds[位置]);

i.setScaleType(ImageView.ScaleType.FIT_XY);

 //像素设置!!!

i.setLayoutParams(new Gallery.LayoutParams(200, 100));

但正如您所看到的,它正在以像素为单位设置布局尺寸。

有谁知道如何做同样的事情,但在“浸”中?

I'm using the following code :

ImageView i = new ImageView(mContext);

i.setImageResource(mImageIds[position]);

i.setScaleType(ImageView.ScaleType.FIT_XY);

       //pixels settings !!!

i.setLayoutParams(new Gallery.LayoutParams(200, 100));

but as you can see, it is setting the layout dimensions in pixels.

Does anybody know how to do the same thing but in "dip" ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

风吹雪碎 2024-09-23 06:39:06

以下辅助方法将设备独立像素 (DIP) 作为输入并返回当前设备的实际像素。

private int getPixels(int dipValue) {
    Resources r = getResources();
    int px = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                                            dipValue, 
                                            r.getDisplayMetrics());
    return px;
}

The following helper method takes as input device independent pixels (DIP) and returns actual pixels for the current device.

private int getPixels(int dipValue) {
    Resources r = getResources();
    int px = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                                            dipValue, 
                                            r.getDisplayMetrics());
    return px;
}
浅沫记忆 2024-09-23 06:39:06

如果您将尺寸存储为资源,则可以使用

getResources().getDimensionPixelSize(id);

这也将使调整布局变得更加容易。

If you store your dimension as a resource, you can use

getResources().getDimensionPixelSize(id);

This will also make it easier to adjust your layouts.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文