
但是,当我设置:
<supports-screens androID:anyDensity="true" />
图库似乎设置为支持的最低分辨率.
这是画廊布局定义:
<?xml version="1.0" enCoding="utf-8" ?><linearLayout androID:ID="@+ID/galleryLayout" androID:layout_wIDth="fill_parent" androID:layout_height="fill_parent" xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:orIEntation="vertical" androID:background="#000000" ><gallery xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:ID="@+ID/gallery" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:layout_gravity="center" androID:spacing="1dip" androID:gravity="center_vertical|center_horizontal|center"/></linearLayout>
和getVIEw类:
ImageVIEw i = new ImageVIEw(mContext);i.setimageDrawable(drawablesFromUrl[position]);i.setLayoutParams(new gallery.LayoutParams(400,300));i.setScaleType(ImageVIEw.ScaleType.FIT_XY);i.setBackgroundResource(mgalleryItemBackground);
有没有办法检测使用的分辨率,然后调整图库中的图像大小,以便它们延伸到屏幕的宽度?
解决方法 尝试i.setAdjustVIEwBounds(true);
另外,你不应该使用硬编码像素值(在i.setLayoutParams(new gallery.LayoutParams(400,300));)
使用
int wIDth = (int) getResources().getDimension(R.dimen.image_wIDth)int height = (int) getResources().getDimension(R.dimen.image_height)i.setLayoutParams(new gallery.LayoutParams(wIDth,height));
并在一些xml文件中(在res / values下)
<?xml version="1.0" enCoding="utf-8"?><resources> <dimen name="image_height">400dp</dimen> <dimen name="image_wIDth">300dp</dimen></resources>总结
以上是内存溢出为你收集整理的Android – 根据设备分辨率调整图库中的图像大小全部内容,希望文章能够帮你解决Android – 根据设备分辨率调整图库中的图像大小所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)