Android学习之GridView图片布局适配经验
2018-02-18 20:52
411 查看
開始解说这篇博客之前,我想问一下,当布局相似GridView这样的多列布局时,我们该怎么布局,才干更好的去适配呢?
扣张图来展示一下
比如这样的需求,三张图片均分屏幕
实现方法:
1.切图固定,比如是1080x1920。
在固定分辨率上非常好计算,也非常好适配。但有个问题。换了不同的分辨率,就须要做不同的适配。针对不同的分辨率即可计算。这样也能实现。可是太麻烦了,由于各种分辨率的手机层出不穷,适配不止啊。
2.就是本篇博客记叙的重点实现方式。
不用通过固定的大小来设置图片大小。那么怎么做呢?上面已经说过。这样的需求是将屏幕三分。那么获取屏幕宽度。在动态设置图片宽度为0.3屏幕宽度就能非常好的解决这个适配的问题。那么宽度攻克了,高度怎么解决呢?
一般来说。是依据宽高比来确定的,要么是1:1,要么是16:9等。宽高比能够让设计来确定,这样就能够依据获得的宽度来确定高度,哈哈,这样不就是全然解决适配问题了么。
说了这么多,也该上代码了
非常easy吧。在adapter中,实例化ImageView后,调用这几句代码,当然宽高比依据详细需求来说。
另外。xml中ImageView设置宽高都应该为
这样整个适配就完毕了,记录工作中的小成长。谢谢。
扣张图来展示一下
比如这样的需求,三张图片均分屏幕
实现方法:
1.切图固定,比如是1080x1920。
在固定分辨率上非常好计算,也非常好适配。但有个问题。换了不同的分辨率,就须要做不同的适配。针对不同的分辨率即可计算。这样也能实现。可是太麻烦了,由于各种分辨率的手机层出不穷,适配不止啊。
2.就是本篇博客记叙的重点实现方式。
不用通过固定的大小来设置图片大小。那么怎么做呢?上面已经说过。这样的需求是将屏幕三分。那么获取屏幕宽度。在动态设置图片宽度为0.3屏幕宽度就能非常好的解决这个适配的问题。那么宽度攻克了,高度怎么解决呢?
一般来说。是依据宽高比来确定的,要么是1:1,要么是16:9等。宽高比能够让设计来确定,这样就能够依据获得的宽度来确定高度,哈哈,这样不就是全然解决适配问题了么。
说了这么多,也该上代码了
//获取屏幕宽度 int width = ((Activity) ivImage2.getContext()).getWindowManager().getDefaultDisplay().getWidth(); ViewGroup.LayoutParams params = ivImage2.getLayoutParams(); //设置图片的相对于屏幕的宽高比 params.width = width/2; params.height = width/3 ; ivImage2.setLayoutParams(params);
非常easy吧。在adapter中,实例化ImageView后,调用这几句代码,当然宽高比依据详细需求来说。
另外。xml中ImageView设置宽高都应该为
android:layout_width="wrap_content" android:layout_height="wrap_content"
这样整个适配就完毕了,记录工作中的小成长。谢谢。
相关文章推荐
- Android学习之GridView图片布局适配经验
- Android实现滑动图片(ViewPager)学习之一:布局
- android屏幕适配不同的资源图片、布局
- Android屏幕适配不同的资源图片和布局
- android 在listview上面的Textview实现html解析并且图片异步宽高布局重新适配
- android屏幕适配不同的资源图片、布局
- android布局之GridView布局学习小结
- 菜鸟学android——GridView中解决图片重叠,使布局更美观
- Android屏幕适配不同的资源图片、布局
- android屏幕适配不同的资源图片、布局
- Android 一个灵活的图片 Gridview 布局
- Android中GridView 如何正方形显示图片并适配手机
- Android屏幕适配不同的资源图片、布局
- Android屏幕适配不同的资源图片、布局
- Android学习-使用GridView以表格形式显示多张图片
- Android 图片和文字布局,RadioButton有些地方比GridView好用些吧
- Android网格布局GridView学习使用
- android学习——GridView实现主界面布局
- 【android控件学习笔记】GridView表格形式显示多张图片
- android百分比布局学习,适配相关