为了账号安全,请及时绑定邮箱和手机立即绑定

自定义EditText实现登陆

标签:
Android

写自定义Edittext的目的就是为了实现和5.0以后提出来的TextInputLayout;实现登陆一个效果
1.特别是老项目在eclipse中开发的实现的登陆页面
2.自定义Edittext实现一条直线
实现代码:

1.写一个类继承EditText

public class LineEditText extends EditText{

  private Paint paint;
  private float lineWidth;//横线宽度

  public LineEditText(Context context, AttributeSet attrs) {
    super(context, attrs);

   //设置画笔的属性
   paint = new Paint();
   paint.setStyle(Paint.Style.STROKE);
  //可以自定义画笔的颜色
   paint.setColor(Color.BLACK);//黑色
   lineWidth = 3f;//宽度为2
   paint.setStrokeWidth(lineWidth);

  }

  @Override
  protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
   canvas.drawLine(0, this.getHeight()-2, this.getWidth()-2, this.getHeight()-2, paint);
  }
}

2.调用1中的类名(要全路径):

<com.hanwei.dust.view.LineEditText  //全路径
    android:id="@+id/account"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:drawableLeft="@drawable/ic_name"
    android:drawablePadding="16dp"
    android:hint="用户名"
    android:maxLines="1"
    android:background="@null"
    android:singleLine="true"
    android:textColor="#ffffff" />

3.一定要加上,为了和原有的Edittext重合:

android:background="@null"

4.在代码中调用即可:

mAccount = (LineEditText) findViewById(R.id.account);

5.实现效果:

5ba9f1a60001cc1405710159.jpg

原文链接:http://www.apkbus.com/blog-784586-62824.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消