zoukankan      html  css  js  c++  java
  • Android 它们的定义View

    安卓开发过程,安卓官方控制有时来自往往不能满足我们的需求。这一次,我必须定义自己。下面我们就来看看他们的定义View:

    package com.example.myview;
    
    import android.content.Context;
    import android.graphics.Canvas;
    import android.graphics.Color;
    import android.graphics.Paint;
    import android.graphics.Paint.Style;
    import android.util.AttributeSet;
    import android.view.View;
    import android.view.View.OnClickListener;
    
    public class MyView extends View implements OnClickListener{
    	private int a=0;
    	private Paint paint;
    
    	public MyView(Context context) {
    		super(context);
    		// TODO Auto-generated constructor stub
    	}
    	 public MyView(Context context, AttributeSet attrs) {
    		  super(context, attrs);
    		 }
    	@Override
    	protected void onDraw(Canvas canvas) {
    		super.onDraw(canvas);
    		paint=new Paint();//定义一个画笔
    		paint.setColor(Color.RED);//给画笔设置颜色
    		paint.setStyle(Style.FILL);//设置画笔填充
    		canvas.drawCircle(100, 100, 100, paint);//画个圆
    		paint.setColor(Color.BLUE);//给画面设置颜色
    		paint.setTextSize(20);//设置字体大小
    		canvas.drawText("小源"+a, 100, 100, paint);
    		setOnClickListener(this);//给View加上监听
    		
    	}
    	@Override
    	public void onClick(View arg0) {
    		// TODO Auto-generated method stub
    		a++;
    		invalidate();//又一次绘制
    	}
    }
    

    在XML中 我们要把我们自己定义的控件写上例如以下:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".MainActivity" >
    
    	<com.example.myview.MyView 
    	    android:layout_width="wrap_content"
    	    android:layout_height="wrap_content"/>
    </RelativeLayout>
    


    这就完毕了一个很easy的自己定义View.程序路上一起努力,加油!

    行。进步一点点!它最终会成为神的!


     

    版权声明:本文博主原创文章,博客,未经同意不得转载。

  • 相关阅读:
    Swift入门篇-Hello World
    Swift入门篇-swift简介
    Minecraft 插件 world edit 的cs 命令
    搭建本地MAVEN NEXUS 服务
    MC java 远程调试 plugin 开发
    企业内部从零开始安装docker hadoop 提纲
    javascript 命令方式 测试例子
    ca des key crt scr
    JSF 抽象和实现例子 (函数和属性)
    form 上传 html 代码
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4876481.html
Copyright © 2011-2022 走看看