Android EditText如何去除边框添加下划线
(一)问题
package com.ayqy.app_test;import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.widget.EditText;public class myEditText extends EditText{private int lineColor;//横线颜色private float lineWidth;//横线宽度public myEditText(Context context) {super(context);//设置默认颜色和横线宽度lineColor = Color.BLUE;//默认蓝色线lineWidth = 0.5f;//默认宽度为0.5 }public myEditText(Context context,int color,float width) {super(context);//设置颜色和横线宽度this.lineColor = color;this.lineWidth = width;}@Overrideprotected void onDraw(Canvas canvas) {// TODO Auto-generated method stub super.onDraw(canvas);//创建画笔Paint mPaint = new Paint();mPaint.setStrokeWidth(lineWidth);mPaint.setStyle(Paint.Style.FILL);mPaint.setColor(lineColor);//获取参数int padL = this.getPaddingLeft();//获取框内左边留白int padR = this.getPaddingRight();//获取框内右边留白int padT = this.getPaddingTop();//获取框内顶部留白int lines = this.getLineCount();//获取行数float size = this.getTextSize();//获取字体大小float baseTop = padT + size / 6;//从上向下第一条线的位置/*这里需要说明的是size/6这个值,是偶然测试得到的,近似于行距的一半*为什么不用EditText.getLineSpacingExtra();来获取行距?*因为测试发现若调用EditText的getLineSpacingExtra方法会报NoSuchMethod错误,具体原因不明*测试发现行距的值近似于TextSize的1/3,在需要用到行距的时候可以用这个值来代替getLineSpacingExtra方法* */float gap = this.getLineHeight();//获取行宽//从上向下划线for(int i = 1;i <= lines;i++){canvas.drawLine(padL//startX, baseTop + gap * i//startY, this.getWidth() - padR//endX, baseTop + gap * i//endY , mPaint);}}public int getLineColor() {return lineColor;}public void setLineColor(int color) {this.lineColor = color;}public float getLineWidth() {return lineWidth;}public void setLineWidth(float width) {this.lineWidth = width;}}
P.S.上方的代码注释提到了“测试发现若调用EditText的getLineSpacingExtra方法会报NoSuchMethod错误”,Google之后发现好像没人遇到过这个问题,如有朋友知道答案请在下方留言,谢谢
Android EditText如何去除边框添加下划线相关推荐
- Android开发之为textView添加下划线,中划线等
我们在开发应用的时候,尤其是在做商城项目的时候,需要用到原价格以及降价后的价格,这就不可避免用到中划线或者下划线,在原价格上做一个中划线,这样效果更好.那么如何设置中划线或者下划线呢?请看本文. 1. ...
- Android 给EditText添加下划线
在安卓高版本中,默认是有下划线的,其下划线的颜色是由其主题颜色来控制的 <style name="AppTheme" parent="Theme.AppCompat ...
- android 下划线edittext,Android实现EditText添加下划线
在安卓高版本,默认是有下划线的,其默认下划线的颜色是由其主题颜色来控制的! 控制如下: @color/colorPrimary @color/colorPrimaryDark **@color/col ...
- linux中文本怎么添加下划线,Android实现EditText添加下划线
在安卓高版本,默认是有下划线的,其默认下划线的颜色是由其主题颜色来控制的! 控制如下: @color/colorPrimary @color/colorPrimaryDark **@color/col ...
- 给EditText添加下划线
在安卓高版本,默认是有下划线的,其默认下划线的颜色是由其主题颜色来控制的! 控制如下: <style name="AppTheme" parent="Theme.A ...
- android textView 替文字添加下划线 删除线
android textView 替文字添加下划线 删除线 方法1: tv=(TextView)findViewById(R.id.tv); tv.getPaint().setFlags(Paint. ...
- css中a标签超链接在新窗口中打开以及超链接去除/添加下划线
css中a标签超链接属性设置 超链接基本语法: <a href="http://www.baidu.com">点击我会跳转到百度</a> a标签默认颜色为蓝 ...
- Android Textview 添加下划线 方法
Android TextView 添加下划线的简单方法 在res的values资源文件夹下,给String.xml文件添加 <string name="userlicense" ...
- delphi edit里面的文字如何添加下划线_标题设计如何处理更吸引人?来看设计高手的实用技巧...
计是在向用户传递信息,在设计的日常工作中,传递信息的方式大多都是图文相结合的形式,而文字作为信息传递中最直观的表现形式,对于整体而言是至关重要的一环.很多设计师一味强调追求图具有吸引力,而忽略了文字的 ...
最新文章
- CSS知识点——可替换元素vs不可替换元素
- 拆解一个舵机组成的机器人
- bootstrap ui
- HDU 2157 How many ways?? 临接矩阵+快速幂
- java json的使用,java中json的使用
- js 循环拆词_js 各种循环语法
- 【转】 onNewIntent调用时机
- 设计模式(二)设计模式的本质
- ciaodvd数据集的简单介绍_人工智能进阶-CIFAR-10数据集介绍
- Spring Boot log4j多环境日志级别的控制
- 为什么美女不愿意过苦日子?
- HDU 2588 GCD 【Euler + 暴力技巧】
- matlab在电气信息类专业中的应用,MATLAB在电气信息类专业中的应用(高等学校应用型特色规划...
- redis安装及使用
- ngrok小米球的使用
- Android开发指南-窗口小部件(App Widgets)
- 继续教育自动听课软件_2017继续教育挂机软件下载
- idea破解版下载 + 最常用快捷键记录
- APP性能测试(手机端和服务端)
- 科目二学车经验(手动挡C1)
热门文章
- ASCII码对应表chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)、chr(.. 以及oracle中使用chr
- Zsh vs. Bash不完全对比解析,zsh是一种更强大的被成为“终极”的Shell
- 了解JavaScript 对象的属性操作
- 聊一聊js中的null、undefined与NaN
- 恶意软件、Rootkit和僵尸网络
- video processing on Mac and iOS
- 根据信号灯状态解决网络故障
- Android的短信接收类
- 内网之工作组、域 分析
- 汇编语言 循环控制指令