知识点:1、DDMS:是Android的一种工具,这个工具可以对Android程序以及设备进行运行追踪和调试
2、Logcat:android的控制台

将异常或者错误信息输出到Android的控制台(代码如下)
try{Class.forName("111");}catch(Exception e){//先输出异常类型和描述信息Log.e("tag", e.toString());//然后再将堆栈的方法调用痕迹输出StackTraceElement[] ste=e.getStackTrace();for(int i=0;i<ste.length;i++){Log.e("tag", ste[i].toString());}}


如何方便快捷的找出错误信息(输出信息的方式)
//输出信息到logcatLog.e("Tag", "这是error级的信息,字体为红色");Log.w("Tag", "这是warning级的信息,字体为橙色");Log.d("Tag", "这是debug级的信息,字体为蓝色");Log.i("Tag", "这是info级的信息,字体绿色");Log.v("Tag", "这是verbose级的信息,字体为黑色");//按理来说我们如果是调试信息,那么应该用d,如果是看变量值,应该是用i//如果是错误应该是e //但是个人建议除了错误外,都使用v,因为黑色在logcat中非常容易区分



3、View:View是android中的一种称呼,在android中所有可见的,不可见的,只要是控件,都可以称呼为view(相当于swing的Component)
View分为两类:3.1、ViewGroup:布局,容器View

3.2、View:Button,TextView等传统的控件。


4、一个简单的例子(模拟水滴)

步骤一:新建一个Circle类模拟水滴(代码如下)
package com.zjyb.demo3;import android.graphics.Color;//圈圈的类public class Circle {//以前我们都喜欢private,然后get/set//在android中没这种讲法        //水滴的X轴坐标public float x;        //水滴的Y轴坐标public float y;        //水滴的半径public float radius;        //水滴的颜色public int color=Color.parseColor("#16e9c9");        //水滴的透明度public int alpha=255;}



步骤二:新建一个MyView类继承View(代码如下)
package com.zjyb.demo3;import java.util.ArrayList;import java.util.List;import java.util.Random;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.view.View;public class MyView extends View implements Runnable{public void run(){while(true){//invalidate和postInvalidate//前者是普通的销毁,是线程不安全的,通常我们会在UI线程中调用//后者是内部实现了Handler消息队列的销毁方式,可以在非UI线程中调用//然后具体的执行会有内部实现的Handle去处理postInvalidate();try{Thread.sleep(100);}catch(Exception e){}}}public MyView(Context context) {super(context);new Thread(this).start();// TODO Auto-generated constructor stub}public Circle c; //利用集合存放以前绘制的内容public List<Circle> historyCircle=new ArrayList();public void add(Circle c){//if(historyCircle.size()>10){//historyCircle.remove(0);//}historyCircle.add(c);}//绘制方法,每次当控件被构建的时候调用,然后绘制控件@Overrideprotected void onDraw(Canvas canvas) {Random rd=new Random();//首先准备画笔Paint paint=new Paint();//设置画笔属性//设置画笔为绘制空心paint.setStyle(Paint.Style.STROKE);paint.setStrokeWidth(4);//开始绘制for(int i=0;i<historyCircle.size();i++){Circle c= historyCircle.get(i);paint.setColor(c.color);//设置透明度paint.setAlpha(c.alpha);canvas.drawCircle(c.x, c.y, c.radius, paint);c.radius=c.radius+5;c.alpha=c.alpha-12;if(c.radius>100){historyCircle.remove(i);}}//if(c!=null){//canvas.drawCircle(c.x, c.y, c.radius, paint);//}super.onDraw(canvas);}}


步骤三、编写MainActivity中的代码
package com.zjyb.demo3;import java.util.Random;import android.os.Bundle;import android.app.Activity;import android.graphics.Color;import android.view.Menu;import android.view.MotionEvent;import android.view.Window;import android.view.WindowManager;public class MainActivity extends Activity {MyView view;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//全屏,必须在setContentView之前调用requestWindowFeature(Window.FEATURE_NO_TITLE);getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);view=new MyView(this);setContentView(view);}//触摸方法,当屏幕被触摸的时候自动调用@Overridepublic boolean onTouchEvent(MotionEvent event) {// TODO Auto-generated method stub//Touch表示触摸,有两种状态:Down和Up//if(event.getAction()==MotionEvent.ACTION_UP){Random rd=new Random();Circle c=new Circle();c.x=event.getX();c.y=event.getY();c.radius=10;//rd.nextInt(51)+10;//c.color=Color.rgb(rd.nextInt(250), rd.nextInt(250), rd.nextInt(250));view.add(c);//view.historyCircle.add(c);//view.c=c;//摧毁,让view进行重绘view.invalidate();//}return super.onTouchEvent(event);}}



源码下载请点这里:

更多相关文章

  1. Android--EditText控件属性汇总
  2. android apk 签名信息 相关
  3. Delphi处理Android的路径信息
  4. Android系统信息获取
  5. Android 下拉刷新控件的使用
  6. android.uid.system无法读取SD卡信息

随机推荐

  1. Android(安卓)TV开发总结(五)TV上屏幕适配
  2. Android(安卓)4.2 webview注入js对象时需
  3. Android(安卓)深入解析用户界面(一)
  4. android修改软键盘的回车键为搜索键以及
  5. Android实现语音识别
  6. android之SharedPreferences进行数据存储
  7. Android(安卓)性能测试优质实践汇总
  8. Android: java应用程序进程启动过程的代
  9. 关于Android的Holo主题
  10. Android(安卓)- 数据存储