首页 > 移动平台 > 详细

Android 去除EditText边框,添加下划线,

时间:2016-08-08 14:25:39      阅读:336      评论:0      收藏:0      [点我收藏+]

首先:重写EditText

//请在这里添加您的包名  
import android.content.Context;  
import android.graphics.Canvas;  
import android.graphics.Color;  
import android.graphics.Paint;  
import android.util.AttributeSet;  
import android.widget.EditText;  
  
public class LineEditText extends EditText {  
  
    private Paint mPaint;  
    /** 
     * @param context 
     * @param attrs 
     */  
    public LineEditText(Context context, AttributeSet attrs) {  
        super(context, attrs);  
        // TODO Auto-generated constructor stub  
        mPaint = new Paint();  
          
        mPaint.setStyle(Paint.Style.STROKE);  
        mPaint.setColor(Color.BLUE);  
    }  
      
    @Override  
    public void onDraw(Canvas canvas)  
    {  
        super.onDraw(canvas);  
          
//      画底线  
        canvas.drawLine(0,this.getHeight()-1,  this.getWidth()-1, this.getHeight()-1, mPaint);  
    }  
}  

其次:设置LineEditText

<?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"  
    >  
<!--注意名称 -->  
<com.marine.study.LineEditText   
      
    android:id="@+id/myEdit"  
    android:layout_width="fill_parent"   
    android:layout_height="wrap_content"   
    style="?android:attr/textViewStyle"   
    android:background="@null"  
    android:textColor="@null"   
/>  
</LinearLayout>  

 其中background,可以设置成其他颜色等

textColor不一定要是null,可以设置字体颜色

最后:应用LineEditText

import android.app.Activity;  
import android.content.Context;  
import android.graphics.Canvas;  
import android.graphics.Color;  
import android.graphics.Paint;  
import android.graphics.Rect;  
import android.os.Bundle;  
import android.text.InputFilter;  
import android.util.AttributeSet;  
import android.widget.EditText;  
  
public class LineEditTextTest extends Activity {  
    /** Called when the activity is first created. */  
    private EditText mEdit;  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
          
        mEdit=(LineEditText)findViewById(R.id.myEdit);  
        mEdit.setHint("从这里开始输入...");  
        mEdit.setSingleLine();  
        mEdit.setFilters(new InputFilter[]{new InputFilter.LengthFilter(20)});  
    }  
      
}  

 

Android 去除EditText边框,添加下划线,

原文:http://www.cnblogs.com/zhujiabin/p/5748806.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!