u3l*_*u3l 1 android screen-resolution imageview layoutparams
我有一个ImageView我想以编程方式设置的大小。所以我没有选择将不同大小的图像放在各自的drawable文件夹中。
基本上,我想LayoutParams根据屏幕分辨率进行设置,而不是执行我在下面所做的操作。如果设备是ldpi或mdpi,那么100,100...如果是hdpi,那么150,150等等。我怎样才能做到这一点?
ImageVIew imageView = new ImageView(this);
imageView.setLayoutParams(new ViewGroup.LayoutParams(100, 100));
layout.add(imageView);
Run Code Online (Sandbox Code Playgroud)
您可以使用
ImageVIew imageView = new ImageView(this);
int size = getImageSize();
imageView.setLayoutParams(new ViewGroup.LayoutParams(size , size ));
layout.add(imageView);
Run Code Online (Sandbox Code Playgroud)
你的getImageSize功能将是
private int getImageSize(){
int density= getResources().getDisplayMetrics().densityDpi;
int size =100;
switch(density)
{
case DisplayMetrics.DENSITY_LOW:
size = 100;
break;
case DisplayMetrics.DENSITY_MEDIUM:
size = 100;
break;
case DisplayMetrics.DENSITY_HIGH:
size = 150;
break;
}
return size;
}
Run Code Online (Sandbox Code Playgroud)
其中getImageSize根据不同的密度返回不同的大小。
| 归档时间: |
|
| 查看次数: |
3951 次 |
| 最近记录: |