分析
因项目需求需要实现仿微信朋友圈单张图片展示效果,经分析微信单张图片的显示效果分两种情况:
1.当需要展示的图片实际宽度占满全屏时,发现高度大于指定高度,此时固定ImageView控件高度为最大高度,宽度则按图片比例进行缩放;
2.当需要展示的图片实际宽度占满全屏时,发现高度小于或等于指定高度,此时ImageView控件的高宽度都按图片比例进行缩放;
两种情况示例图如下:(第一条item表示第一种情况,第二条item表示第二种情况)
实现
通过ImageView的按比例缩放功能及限定最大高度配合实现
示例代码
<ImageViewandroid:id="@+id/iv_picture"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginBottom="10dp"android:adjustViewBounds="true"android:maxHeight="240dp"android:scaleType="fitStart" />
说明:
1.通过设置android:layout_height="wrap_content"与android:adjustViewBounds="true"实现填充图片后控件高度按比例缩放
2.通过android:maxHeight="240dp"限定填充图片后的最大高度,防止图片过长影响浏览
3.通过android:scaleType="fitStart"调整图片填充初始位置
Demo地址:/ziwenL/WechatMomentsOnlyPictureDemo
如果觉得《Android 仿朋友圈单张图片限定宽高超出时按比例缩放效果实现》对你有帮助,请点赞、收藏,并留下你的观点哦!