首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Android-自定义View-带边框TextView

Android-自定义View-带边框TextView

作者头像
圆号本昊
发布2021-09-24 12:01:59
发布2021-09-24 12:01:59
5720
举报
文章被收录于专栏:github@hornhuanggithub@hornhuang

实际效果:

代码实现:

新建 MyTextView 类,使其继承 TextView 类

代码语言:javascript
复制
public class MyTextView extends android.support.v7.widget.AppCompatTextView {

    private Paint mPaint1 = null, mPaint2 = null;

    public MyTextView(Context context) {
        super(context);
    }

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

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

    @Override
    protected void onDraw(Canvas canvas) {
        mPaint1 = new Paint();
        mPaint1.setColor(getResources().getColor(android.R.color.holo_blue_light));
        mPaint1.setStyle(Paint.Style.FILL);

        mPaint2 = new Paint();
        mPaint2.setColor(Color.YELLOW);
        mPaint2.setStyle(Paint.Style.FILL);

        // 绘制外层矩形
        canvas.drawRect(0, 0, getMeasuredWidth(), getMeasuredHeight(), mPaint1);

        // 绘制内层矩形
        canvas.drawRect(10, 10, getMeasuredWidth() - 10, getMeasuredHeight() - 10, mPaint2);

        canvas.save();
        // 绘制前文字向前平移 10dp
        canvas.translate(10, 0);
        super.onDraw(canvas);
        canvas.restore();
    }
}

然后再布局文件中引用即可:

代码语言:javascript
复制
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/03/27 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 实际效果:
  • 代码实现:
  • 然后再布局文件中引用即可:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档