canvas教程

《刘燕军》

字号+ 作者:H5之家 来源:H5之家 2017-06-23 17:02 我要评论( )

我个人不费话,内容如题,以下是代码:packagecom.puppet.custom.component;importandroid.content.Context;importandroid.graphics.Canvas;importandroid.graph

博主的更多文章>>

android editText 自定义边框

2011-03-17 11:02:06

标签:

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。

我个人不费话,内容如题,以下是代码:

package com.puppet.custom.component;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.widget.EditText;

public class SearchEditText extends EditText{
  private Paint paint;
  public SearchEditText(Context context) {
    super(context);
    //定义画笔
    paint = getPaint();
    //定义笔画粗细样式
    paint.setStyle(Paint.Style.STROKE);
    //定义笔画颜色
    paint.setColor(Color.GRAY);
  }
  @Override
  protected void onDraw(Canvas canvas) {
    super.onDraw(canvas);
    int w = getWidth();
    int h = getHeight();
    //下边框
    canvas.drawLine(0, h, w, h, paint);
    //右边框
    canvas.drawLine(w, 0, w, h, paint);
    //左边框
    canvas.drawLine(0, 0, 0, h, paint);
    //上边框
    canvas.drawLine(0, 0, w, 0, paint);
  }
}



以下是该控件的引用

package com.puppet.activity;

import com.puppet.custom.component.SearchEditText;

import android.content.Context;
import android.graphics.Color;
import android.view.Gravity;
import android.widget.EditText;
import android.widget.LinearLayout;

public class TestLayout extends LinearLayout{

  public TestLayout(Context context) {
    super(context);
    //设背景色为白色
    setBackgroundColor(Color.WHITE);
    setOrientation(LinearLayout.VERTICAL);
    
    testBox = new SearchEditText(context);
    //设置背景为"@null"
    testBox.setBackgroundColor(0);
    //设置显示(宽、高)
    LayoutParams sbLp = new LayoutParams(300,LayoutParams.WRAP_CONTENT);
    //设置边界,以便查看上边框样式
    sbLp.topMargin = 5;
    //居中显示
    sbLp.gravity = Gravity.CENTER;
    //设置该样式
    testBox.setLayoutParams(sbLp);
    testBox.setHint("请从这里输入...");
    //添加到布局
    addView(testBox);
    
  }
  private EditText testBox = null;
}


下面是Activity的引用:

package com.puppet.activity;

import android.app.Activity;
import android.os.Bundle;

public class TestActivity extends Activity{
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    TestLayout test = new TestLayout(TestActivity.this);
    setContentView(test);
  }
}



本文出自 “《刘燕军》” 博客,请务必保留此出处

programdolt、MMSUXIAOHH

2人

了这篇文章

类别:未分类┆阅读(0)┆评论(0) ┆ 返回博主首页┆返回博客首页

相关文章

文章评论

 

2011-03-18 10:41:41

第一篇文章 坐个沙发 赞一个 很不错哦


2013-07-09 15:20:53

我用了这种自定义有边框的Edittext类的方法 但是如果我固定了单行的长度 或是多行的高度 我输入的过多之后 边框会出现移动状况 怎么解决啊


 

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 临沂代怀孕公司价格:Android编程实现图片平铺的方法分析

    临沂代怀孕公司价格:Android编程实现图片平铺的方法分析

    2017-06-23 16:00

  • 使用AudioTrack进行音频播放

    使用AudioTrack进行音频播放

    2017-06-23 11:00

  • android部分介绍 android.多线程.生命周期 android.多线程.生命

    android部分介绍 android.多线程.生命周期 android.多线程.生命

    2017-06-23 10:03

  • 【Android开发】图形图像处理技术

    【Android开发】图形图像处理技术

    2017-06-18 18:01

网友点评
r