在平时的开发过程中简单的,android自带的view控件不能满足我们的创意。这个时候就需要我们手动去自定义它,好让view随心所欲的创新。

好了直入主题:

第一步:定义一个类(myView)继承自View,代码如下

packagecom.android.tutor;importandroid.content.Context;importandroid.graphics.Canvas;importandroid.graphics.Color;importandroid.graphics.Paint;importandroid.graphics.Rect;importandroid.graphics.Paint.Style;importandroid.util.AttributeSet;importandroid.view.View;public class MyViewe xtends View{    private Paintm Paint;    private Context mContext;    private static final String mString="Welcome";    public MyView(Context context){        super(context);    }    public MyView(Context context,AttributeSet attr){        super(context,attr);    }    @Override    protected void onDraw(Canvas canvas){        //TODOAuto-generatedmethodstub        super.onDraw(canvas);        mPaint=newPaint();        //设置画笔颜色        mPaint.setColor(Color.RED);        //设置填充        mPaint.setStyle(Style.FILL);        //画一个矩形,前俩个是矩形左上角坐标,后面俩个是右下角坐标        canvas.drawRect(newRect(10,10,100,100),mPaint);        mPaint.setColor(Color.BLUE);        //绘制文字        canvas.drawText(mString,10,110,mPaint);    }}

第二步:将我们自定义的View加入到main.xml布局文件中,代码如下:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"><TextView    android:layout_width="fill_parent"    android:layout_height="wrap_content"    android:text="@string/hello"/><com.android.tutor.MyView    android:layout_width="fill_parent"    android:layout_height="fill_parent"/></LinearLayout>


这就是简单的一个实现过程,方法就是这样。如果想成长,那么你就根据这个步骤,一边查看api,一边动手写自己的view。







更多相关文章

  1. 自定义Dialog宽度设定
  2. android状态栏一体化(改变状态栏的背景颜色)
  3. Android(安卓)FrameLayout布局中的控件设置居中动态设置
  4. 关于Android主题splash全屏和主页面的沉浸式状态栏
  5. TextInputEditText样式设置
  6. Android之EditText 属性汇总 +限定输入某些特殊字符
  7. Android(安卓)6.0新控件属性记录
  8. intent-filter的data属性详述
  9. Android(安卓)View坐标系

随机推荐

  1. Android开发学习总结(三)——appcompat_v
  2. Android(安卓)adb root权限
  3. [Android Pro] 通过Android trace文件分
  4. android-学习笔记之按钮事件
  5. Android Studio 链接蓝牙库
  6. Android基于XMPP Smack Openfire开发IM【
  7. Android下用程序的方法为ListView设置分
  8. Android中获取应用程序(包)的大小-----Pa
  9. 一起学android之HTTP预备知识(16)
  10. Android导入自定义的jar包时出现 E/Andro