Android学习(六) 文本框边框
BorderTextViews.java
package xiaosi.BorderTextView; import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.widget.TextView; public class BorderTextViews extends TextView
{
private Paint paint = null;
private int color = Color.GRAY;
public BorderTextViews(Context context, AttributeSet attrs)
{
super(context, attrs);
}
//设置边框颜色
public void setPaintColor(int color){
this.color = color;
}
@Override
protected void onDraw(Canvas canvas)
{
super.onDraw(canvas);
paint = new Paint();
//给边框设置颜色
paint.setColor(color);
//上
canvas.drawLine(0, 0, this.getWidth()-1, 0, paint);
//左
canvas.drawLine(0, 0, 0, this.getHeight()-1, paint);
//下
canvas.drawLine(0, this.getHeight()-1, this.getWidth()-1, this.getHeight()-1, paint);
//右
canvas.drawLine(this.getWidth()-1, 0, this.getWidth()-1, this.getHeight()-1, paint);
}
}
Main_Activity.java
package xiaosi.BorderTextView; import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle; public class BorderTextViewActivity extends Activity {
/** Called when the activity is first created. */
private BorderTextViews borderTextView = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
borderTextView = (BorderTextViews)findViewById(R.id.Border);
borderTextView.setPaintColor(Color.GRAY);
}
}
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#CCFF66"> <xiaosi.BorderTextView.BorderTextViews
android:id="@+id/Border"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#C71585"
android:layout_marginTop="20dp"
android:padding="10dp"
android:layout_gravity="center"
android:text="在画布上画边框" /> </LinearLayout>
预览效果:

Android学习(六) 文本框边框的更多相关文章
- Android 下拉列表框、文本框、菜单
1.下拉列表框(Spinner) 项目布局 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/andr ...
- android启动activity文本框不获得焦点
在开发中,常常会碰到这种情况,打开一个activity后,第一个文本框自动获得焦点,同时会弹出软键盘输入框,这样很影响用户体验,现在来看解决方法. 我们先来看看为什么会出现上述情况,原因很简单,文本框 ...
- 【学习】文本框输入监听事件oninput
真实项目中遇到的,需求是:一个文本框,一个按钮,当文本框输入内容时,按钮可用,当删除内容时,按钮不可用. 刚开始用的focus和blur, $(".pay-text").focus ...
- android 学习六 构建用户界面和使用控件
1.常用Android控件最终都会继承自View类 2.ViewGroup是一些布局类列表的基类,包括View和ViewGroup 3.构造界面的三种方法 a.完全使用代码(太灵活,而不好维护) ...
- Android学习六---OpenCV for android samples
搭建好OpenCV4Android环境后,就要着手开发自己的应用了.对于一个没有OpenCV基础的人来开发OpenCV应用确实有点难度,不过我们可以从samples里学起,结合javadoc和万能的网 ...
- Android学习六:Socket 使用
1socket的作用 通过http去获取服务器的数据在有些情况下是行不通的,所有使用socket与服务器通信也是必须掌握的 2.代码 好了上代码,代码中有解释,首先是简单的服务端代码 package ...
- openfire Android学习(六)----总结
Xmpp的一些方法整理到一个工具类中了 XmppConnection.java [java] view plaincopy [java] view plaincopy import java.io.B ...
- Android -- 自动完成文本框(可以匹配多个值,并以,结尾)
1.
- android源代码提示文本框还能输入多少个字符
public class TestAndroidActivity extends Activity { /** Called when the activity is first created. * ...
随机推荐
- vue-cli打包后图片路径取不到的问题
今天准备把vue-cli build 的文件发到服务器上单发现会出现图片找不到的问题 解决办法如下 修改 assetsPublicPath: './' .打开webpack.prod.conf.js, ...
- 杭电oj2081、2091、1004、2057
2081 手机短号 #include<stdio.h> #include<string.h> int main(){ int i,n; ]; while(scanf(&quo ...
- VLC for iOS 2.3.0
http://www.cocoachina.com/bbs/read.php?tid=231898 VLC for iOS 2.3.0 本帖属于CocoaChina会员发表,转帖请写明来源 ...
- Centos7部署Open-Falcon监控
参考博主:努力哥完成 一.Open-Falcon介绍 1.监控系统,可以从运营级别(基本配置即可),以及应用级别(二次开发,通过端口进行日志上报),对服务器.操作系统.中间件.应用进行全面的监控,及报 ...
- block方法加入无效的问题
+(LDLabel *)labelWithFrame:(CGRect)frame withTitle:(NSString *)title withFont:(float)font withtextCo ...
- (31)C#时间
一. DateTime dt = DateTime.Now 对象 1.获取当前时间 Console.WriteLine(dt.Year+"年"); //当前年份 Console.W ...
- Codeforces 1009F Dominant Indices
另类解法 将每一个节点拥有的各深度节点数量存在vector中,向上返回,这样不会占用过多的内存,以此判断最多节点相应的深度即可,但正常写最后一个数据会T,毕竟一次复制一个节点,相当于复制了(1+2+3 ...
- Codeforces E. Bash Plays with Functions(积性函数DP)
链接 codeforces 题解 结论:\(f_0(n)=2^{n的质因子个数}\)= 根据性质可知\(f_0()\)是一个积性函数 对于\(f_{r+1}()\)化一下式子 对于 \[f_{r+1} ...
- 【bzoj1977】【严格次小生成树】倍增维护链上最大次大值
(上不了p站我要死了,侵权度娘背锅) Description 小 C 最近学了很多最小生成树的算法,Prim 算法.Kurskal 算法.消圈算法等等. 正当小 C 洋洋得意之时,小 P 又来泼小 C ...
- Jackson反序列化提示:Can not deserialize instance of Task out of START_ARRAY token
解决方法: 1.没有绝对的方法,只能不断的测试和排查. 2.检查一下JSON数据和实体的字段结构是不是不一致导致的.比如JSON数据是数组,而实体字段为非数组. 参考: https://stackov ...