[发明专利]一种Android端的多图片展示方法在审
申请号: | 201911313912.3 | 申请日: | 2019-12-19 |
公开(公告)号: | CN111176769A | 公开(公告)日: | 2020-05-19 |
发明(设计)人: | 苗新新;卢林清;唐进;段凌云;陈正超 | 申请(专利权)人: | 贵阳语玩科技有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451;G06F16/54 |
代理公司: | 北京恒创益佳知识产权代理事务所(普通合伙) 11556 | 代理人: | 付金豹 |
地址: | 550008 贵州省贵阳市贵阳国家高新技术*** | 国省代码: | 贵州;52 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 android 图片 展示 方法 | ||
本发明公开了一种Android端的多图片展示方法,包括以下步骤:步骤1、设置父控件和子控件,父控件用于存放子控件,子控件用于存放图片;给父控件设置一个最大的宽高,防止子控件超出屏幕;步骤2、根据子控件个数以及父控件的高度和宽度,计算出每个子控件的宽度与高度,并且计算出行数;步骤3、对子控件进行排列,根据布局方向设定子控件的位置;步骤4、最后向创建好的子控件中加载图片内容,添加到父控件里面去。提供了一种多图片展示的方案,根据图片张数的不同,实现不同的排列和展示效果。
技术领域
本发明涉及图片显示技术领域,尤其涉及的是一种Android端的多图片展示方法。
背景技术
Android端的多图片展示在目前有很多种解决方案,但是大多数代码侵入性太强,在单张图片上效果实现没有问题,但是在多张图片上展示效果不理想,并且性能也很差。
以目前流行的九宫格图片展示方案为例,在展示1张到9张图片上都有不同的排列效果,传统方案是在XML布局文件中通过多个系统本身提供的控件,也就是Image控件来处理,内存消耗大,依赖性强,也不利于封装和拓展。
因此,现有技术存在缺陷,需要改进。
发明内容
本发明所要解决的技术问题是针对现有技术的不足提供一种Android端的多图片展示方法。
本发明的技术方案如下:
一种步骤Android端的多图片展示方法,包括以下步骤:
步骤1、设置父控件和子控件,父控件用于存放子控件,子控件用于存放图片;给父控件设置一个最大的宽高,防止子控件超出屏幕;
步骤2、根据子控件个数以及父控件的高度和宽度,计算出每个子控件的宽度与高度,并且计算出行数;
步骤3、对子控件进行排列,根据布局方向设定子控件的位置;
步骤4、最后向创建好的子控件中加载图片内容,添加到父控件里面去。也就是添加图片。
所述的方法,步骤1中,设置父控件的最大宽度为屏幕的宽度,最大高度与宽度相同,也就是一个正方形。
所述的方法,步骤1中,还进行以下设置:初始化设置布局方向跟随系统。
所述的方法,步骤2中,计算出行数的方法为:
当子控件个数大于等于1个小于等于3个时,全部子控件为1行;
当子控件个数大于等于4个小于等于6个时,全部子控件为2行;
当子控件个数大于等于7个小于等于9个时,全部子控件为3行;
当子控件个数大于9个时,只显示前9个,也就是最多显示3行9个。
所述的方法,步骤2中,高度、宽度的计算方法为:
当子控件个数等于1个时,子控件的宽度与高度根据图片本身的宽高比,指定在父控件中占据的高度与宽度,子控件最大宽度不超过父控件的最大宽度,也就是不超过屏幕的宽度,子控件最大高度与最大宽度同理;如果超出了最大的宽度或高度,就要对图片进行截取;
当子控件个数等于2个或4个时,子控件的宽度就是父控件的宽度的一半,高度与宽度相同;
当子控件个数等于3个或者大于等于5个小于等于9个时,子控件的宽度是父控件的宽度的三分之一,高度也是父控件的高度的三分之一。
所述的方法,步骤3中,根据步骤1所设置的布局方向作不通处理:步骤1若设置为正常布局方向:以左起第一张为起点,同一行的图片位置向右平移图片的宽度和图片之间的间距;第二行和三行的图片向下平移图片的高度与行间距;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于贵阳语玩科技有限公司,未经贵阳语玩科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911313912.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种便于拆装的动力锂电池
- 下一篇:一种网络服务器共享缓存区的方法和设备