android textView 描边效果

本文介绍了一种在Android中为TextView添加描边效果的独特方法,通过重写`onDraw`方法,避免使用两个TextView堆叠的方式。只需改变一个布尔值,就能轻松实现描边。这种方法简单高效,适合对TextView样式有个性化需求的场景。
摘要由CSDN通过智能技术生成

        最近在android上搞一个带描边效果的TextView,网上搜索了下都是采用两个TextView在一个layout中进行实现,但细想了下,如果我在一个TextView中让其以不同的方式进行两次描绘不就能够达到效果了吗?由于网上没有看到和我类似的方法,故发出来和大家分享,由于只需要重写protected void onDraw(Canvas canvas);方法即可,故只附上onDraw的实现:

        private boolean m_bDrawSideLine = false; // 默认不采用描边
        /* (non-Javadoc)
	 * @see android.widget.TextView#onDraw(android.graphics.Canvas)
	 */
	@Override
	protected void onDraw(Canvas canvas) {
		if (m_bDrawSideLine) {
                        // 描外层
                        //super.setTextColor(Color.BLUE); // 不能直接这么设,如此会导致递归
                        setTextColorUseReflection(Color.BLUE);
                        m_TextPaint.setStrokeWidth(3);  // 描边宽度
                        m_TextPaint.setStyle(Style.FILL_AND_STROKE); //描边种类
                        m_TextPaint.setFakeBoldText(true); // 外层text采用粗体
                        m_TextPaint.setShadowLayer(1, 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值