由appcompat-v7提供的实现卡片式布局的控件CardView
实际上也是个FrameLayout,额外提供了圆角和阴影效果
通过app:cardCornerRadius
指定圆角弧度
通过app:elevation
指定卡片高度,高度值越大,投影范围越大,投影效果越淡
需要添加依赖
compile 'com.android.support:cardview-v7:24.2.1'
这里用CardView作为RecyclerView单项的最外层布局
注意ImageView的scaleType属性,这个属性可以指定图片的缩放模式
centerCrop:让图片保持原有比例充满ImageView,并将超出屏幕的部分裁剪掉
更多ScaleType属性的介绍:http://www.jianshu.com/p/ea8a48768a2e
用Glide加载图片给ImageView加载图片
Glide
图片加载库,可用于加载本地图片,网络图片,gif,本地视频
当图片像素非常高时,不进行压缩直接展示的话,会引起内存溢出
而Glide在内部做了许多复杂的逻辑操作,其中就包括图片压缩
项目主页:https://github.com/bumptech/glide
添加依赖
compile 'com.github.bumptech.glide:glide:3.7.0'
使用
Glide.with(mContext).load(picture.getImageId()).into(holder.pictureImage);
Glide.with(Context|Activity|Fragment)
.load(URL地址|本地路径|资源id)
.into(imageView);