Chinaunix首页 | 论坛 | 博客
  • 博客访问: 541960
  • 博文数量: 179
  • 博客积分: 3845
  • 博客等级: 中校
  • 技术积分: 2003
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-16 21:25
文章分类
文章存档

2012年(74)

2011年(105)

分类: 嵌入式

2011-12-19 12:51:56

原文地址:http://blog.csdn.net/xiaominghimi/archive/2010/12/21/6089317.aspx

很多童鞋说我的代码运行后,点击home或者back后会程序异常,如果你也这样遇到过,那么你肯定没有仔细读完Himi的博文,第十九篇Himi专门写了关于这些错误的原因和解决方法,这里我在博客都补充说明下,省的童鞋们总疑惑这一块。

直接上代码: 

  1. package com.yly.game;

  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.view.Window;
  5. import android.view.WindowManager;

  6. public class AndroidGamesTest1Activity extends Activity {
  7.     /** Called when the activity is first created. */
  8.     @Override
  9.     public void onCreate(Bundle savedInstanceState) {
  10.         super.onCreate(savedInstanceState);
  11.         
  12.         //隐去电池等图标和一切修饰部分(状态栏部分)

  13.         this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
  14.                 WindowManager.LayoutParams.FLAG_FULLSCREEN);
  15.         // 隐去标题栏(程序的名字)

  16.         this.requestWindowFeature(Window.FEATURE_NO_TITLE);
  17.         
  18.         setContentView(new MyView(this));
  19.     }
  20. }

 注意: 隐去标题(应用的名字) 此设定必须要写在setContentView之前,否则会有异常! 

 对于设置全屏,主要就两点: 一点是设置隐去状态栏部分,包括电池等图标,第二点无疑就是把我们应用的名字也隐去不显示,这样一来就全屏了

 设置全屏也可以在AndroidManifest.xml中定义:    android:theme="@android:style/Theme.NoTitleBar" 隐去标题栏android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 隐去状态栏

 下面是绘制简单图形:

  1. package com.yly.game;

  2. import android.content.Context;
  3. import android.graphics.Canvas;
  4. import android.graphics.Color;
  5. import android.graphics.Paint;
  6. import android.graphics.Rect;
  7. import android.graphics.RectF;
  8. import android.view.View;

  9. public class MyView extends View {
  10.     
  11.     private Paint paint;
  12.     
  13.     public MyView(Context context){
  14.         super(context);
  15.         
  16.         paint = new Paint();
  17.         paint.setAntiAlias(true);//设置画笔无锯齿(如果不设置可以看到效果很差)

  18.         paint.setColor(Color.RED);
  19.         
  20.         this.setKeepScreenOn(true);//设置背景常亮

  21.     }
  22.     
  23.     public void onDraw(Canvas canvas){
  24.         
  25.         canvas.drawColor(Color.WHITE);//设置刷屏颜色

  26.         
  27.         Rect rect = new Rect(30,30,50,50);//这里最后两个参数不是宽高、而是矩形右下角的坐标

  28.         canvas.drawRect(rect, paint);
  29.         
  30.         RectF rectf = new RectF(70f,30f,90f,90f);//RectF 只是矩形 float形式 只是跟Rect精确度不一样

  31.         canvas.drawArc(rectf, 0, 360, true, paint);//这也是画圆 第三个参数为半径

  32.         
  33.         canvas.drawCircle(150, 30, 20, paint);
  34.         
  35.         float[] points = new float[]{200f,10f,200f,40f,300f,30f,400f,70f};
  36.         canvas.drawLines(points, paint);
  37.         canvas.drawLines(points,1, 4,paint);//选取特定点数组中两点来画出一条直线.注意:参数"1"指的是起点(10f,200f),

  38.                                             //参数"4"指的是终点(40f,300f);

  39.         canvas.drawText("moonfish", 230, 30, paint);
  40.     }
  41. }
 AndroidGamesTest1.zip   
阅读(519) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~