TextView 加下划线 、 中划线
有2中方法
- //中画线
- textView.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG | Paint.ANTI_ALIAS_FLAG); // 设置中划线并加清晰
- //下划线
- textView.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);
- //取消设置的线
- textView.getPaint().setFlags(0);
- //抗锯齿
- textView.getPaint().setAntiAlias(true);
自定义下划线UnderlineTextView
public class UnderlineTextView extends android.support.v7.widget.AppCompatTextView {
//Paint即画笔,在绘图过程中起到了极其重要的作用,画笔主要保存了颜色,
//样式等绘制信息,指定了如何绘制文本和图形,画笔对象有很多设置方法,
//大体上可以分为两类,一类与图形绘制相关,一类与文本绘制相关
private final Paint paint = new Paint();
//下划线高度
private int underlineHeight = 0;
//下划线颜色
private int underLineColor;
//通过new创建实例是调用这个构造函数
//这种情况下需要添加额外的一些函数供外部来控制属性,如set*(...);
public UnderlineTextView(Context context) {
this(context, null);
}
//通过XML配置但不定义style时会调用这个函数
public UnderlineTextView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
//获取自定义属性
TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.UnderlineTextView);
//获取具体属性值
underLineColor = typedArray.getColor(R.styleable.UnderlineTextView_underline_color, getTextColors().getDefaultColor());
underlineHeight = (int) typedArray.getDimension(R.styleable.UnderlineTextView_underline_height,
TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 2, getResources().getDisplayMetrics()));
}
//通过XML配置且定义样式时会调用这个函数
public UnderlineTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
//防止下划线高度大到一定值时会覆盖掉文字,需从写此方法
@Override
public void setPadding(int left, int top, int right, int bottom) {
super.setPadding(left, top, right, bottom + underlineHeight);
}
//绘制下划线
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//设置下划线颜色
paint.setColor(underLineColor);
//float left, float top, float right, float bottom
canvas.drawRect(0, getHeight() - underlineHeight, getWidth(), getHeight(), paint);
}
}
style 里面
<!-- UnderlineTextView -->
<declare-styleable name="UnderlineTextView">
<attr name="underline_color" format="color"/>
<attr name="underline_height" format="dimension"/>
</declare-styleable>
xml使用
声明命名空间 xmlns:app="http://schemas.android.com/apk/res-auto"
<xxx.UnderlineTextView
android:id="@+id/tv_forget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/colorPrimary"
app:underline_color="@color/colorPrimary"
app:underline_height="1dp" />
效果图
TextView 加下划线 、 中划线相关推荐
- android按钮设置下划线,Android开发如何给textView设置下划线或中划线
关键字:android,android开发,下划线,中划线 我们在开发应用的时候,尤其是在做商城项目的时候,需要用到原价格以及降价后的价格,这就不可避免用到中划线或者下划线,在原价格上做一个中划线,这 ...
- android字符串加删除线,android textview 添加上划线 中划线 删除线
很简单:两个例子一样 例如1: android textview 添加下划线 中划线 删除线 tv=(TextView)findViewById(R.id.tvId); tv.getPaint().s ...
- IOS Label下划线 中划线
/** * ZY CODE * * 给Label设置下划线 */ +(void)setLabelUnderline:(UILabel *)label{ NSMutableAttributedSt ...
- TextView添加中划线、下划线等
TextView 加下划线 .中划线.抗锯齿效果 //在代码中设置,中划线 textView.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG | Pa ...
- TextView设置下划线等属性
TextView设置下划线等属性 原创乂影 发布于2017-09-14 14:32:17 阅读数 14152 收藏 展开 //下划线 textView.getPaint().setFlags(Pa ...
- 我可以在Android版式中加下划线吗?
如何在Android布局xml文件中定义带下划线的文本? #1楼 Strings.xml文件内容: <resource><string name="my_text" ...
- TextView显示html信息、在文本下面添加下划线、中划线、设置图片
1,在文本下面添加下划线 tv.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG); 2,在文本设置中划线并加清晰 tv.getPaint().setFlag ...
- Android开发之为textView添加下划线,中划线等
我们在开发应用的时候,尤其是在做商城项目的时候,需要用到原价格以及降价后的价格,这就不可避免用到中划线或者下划线,在原价格上做一个中划线,这样效果更好.那么如何设置中划线或者下划线呢?请看本文. 1. ...
- android TextView 中划线、下划线 跑马灯
文字内容可以直接在values文件夹下strings里直接设置id 在activate中直接引用id即可(方便修改) 在这里插入代码片 插入图标 将图片放在drawable下 android:draw ...
最新文章
- Windows netstat 查看端口、进程占用
- Struts2的Action和Servlet有什么联系,区别?
- MyBatis超详细介绍——SQL语句构建器类
- webpack学习(七)打包压缩图片
- 某单位会java_Java核心API -- 4(日期类)
- 信息学奥赛一本通 1010:计算分数的浮点数值 | OpenJudge NOI 1.3 05
- adb隐藏状态栏图标_[应用]华为手机怎么设置隐藏状态栏上的图标
- MD5算法之C#程序 MD5算法描述
- junit测试SSH基本环境
- org.springframework.beans.factory.BeanCreationException...
- 网络工程师和网络管理原的区别
- Mac上IDA报错/:Permission denied Please specify another file path for the database
- [原创]Silverlight与SQLite数据库的互操作(CURD完全解析)[Final]
- 黑客技术之初学者编程入门
- matlab工具箱有哪些函数,matlab工具箱函数汇总(上)
- 屏幕画线软件ZOOMIT
- 微软雅黑和consolas混合字体_你用的字体得到授权了吗,小心巨额索赔!
- 不足200行代码,我用python写了一个上课点名系统。还没开学的你们慌了吗?
- java work stealing_工作窃取(work-stealing)算法
- Sails.js简介