首页>源码>java>CenterBottomImageView

CenterBottomImageView

声明:资源链接索引至第三方,平台不作任何存储,仅提供信息检索服务,若有版权问题,请https://help.coders100.com提交工单反馈
要实现一个固定高度的ImageView,宽度充满屏幕,高度截取上面,可以使用以下代码:

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.View;

public class CustomImageView extends View {
private Paint mPaint;
private RectF mRectF;

public CustomImageView(Context context) {
super(context);
init();
}

public CustomImageView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}

public CustomImageView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}

private void init() {
mPaint = new Paint();
mPaint.setAntiAlias(true);
mPaint.setDither(true);
mPaint.setColor(Color.WHITE);
mPaint.setTextSize(20);
mRectF = new RectF();
}

@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if (mPaint != null && mRectF != null) {
// 计算高度
int height = getResources().getDimensionPixelSize(R.dimen.height_custom_imageview);
// 设置高度
canvas.translate(mRectF.left, mRectF.top);
canvas.scale(1, -height / getWidth());
canvas.drawBitmap(getBitmap(), mRectF, mRectF, mPaint);
canvas.restore();
}
}

private Bitmap getBitmap() {
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
return BitmapFactory.decodeResource(getResources(), R.drawable.your_image, options);
}
}


在布局文件中添加自定义ImageView,如下所示:

固定高度ImageVIew,宽度充满,高度截取上面。
电信网络下载

访问申明(访问视为同意此申明)

1.在网站平台的任何操作视为已阅读和同意网站底部的版权及免责申明
2.部分网络用户分享TXT文件内容为网盘地址有可能会失效(此类多为视频教程,如发生失效情况【联系客服】自助退回)
3.请多看看评论和内容介绍大数据情况下资源并不能保证每一条都是完美的资源
4.是否访问均为用户自主行为,本站只提供搜索服务不提供技术支持,感谢您的支持
意见反馈 联系客服 返回顶部

登录注册找回密码

捐赠账单

可选择微信或支付宝捐赠

*请依据自身情况量力选择捐赠类型并点击“确认”按钮

*依据中国相关法规,捐赠金额平台将不予提供发票

*感谢您的捐赠,我们竭诚为您提供更好的搜索服务

*本着平台非营利,请自主选择捐赠或分享资源获得积分

*您的捐赠仅代表平台的搜索服务费,如有疑问请通过联系客服反馈

*推荐用chrome浏览器访问本站,禁用360/Edge浏览器

*请务必认真阅读上诉声明,捐赠视为理解同意上诉声明

账号剩余积分: 0
啥都没有哦