原文地址:http://blog.csdn.net/xiaominghimi/archive/2010/12/21/6089317.aspx
很多童鞋说我的代码运行后,点击home或者back后会程序异常,如果你也这样遇到过,那么你肯定没有仔细读完Himi的博文,第十九篇Himi专门写了关于这些错误的原因和解决方法,这里我在博客都补充说明下,省的童鞋们总疑惑这一块。
直接上代码:
- package com.yly.game;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.Window;
- import android.view.WindowManager;
- public class AndroidGamesTest1Activity extends Activity {
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- //隐去电池等图标和一切修饰部分(状态栏部分)
- this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
- WindowManager.LayoutParams.FLAG_FULLSCREEN);
- // 隐去标题栏(程序的名字)
- this.requestWindowFeature(Window.FEATURE_NO_TITLE);
-
- setContentView(new MyView(this));
- }
- }
注意: 隐去标题(应用的名字)
对于设置全屏,主要就两点: 一点是设置隐去状态栏部分,包括电池等图标,第二点无疑就是把我们应用的名字也隐去不显示,这样一来就全屏了。
设置全屏也可以在AndroidManifest.xml中定义: android:theme="@android:style/Theme.NoTitleBar" 隐去标题栏android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 隐去状态栏
下面是绘制简单图形:
- package com.yly.game;
- import android.content.Context;
- import android.graphics.Canvas;
- import android.graphics.Color;
- import android.graphics.Paint;
- import android.graphics.Rect;
- import android.graphics.RectF;
- import android.view.View;
- public class MyView extends View {
-
- private Paint paint;
-
- public MyView(Context context){
- super(context);
-
- paint = new Paint();
- paint.setAntiAlias(true);//设置画笔无锯齿(如果不设置可以看到效果很差)
- paint.setColor(Color.RED);
-
- this.setKeepScreenOn(true);//设置背景常亮
- }
-
- public void onDraw(Canvas canvas){
-
- canvas.drawColor(Color.WHITE);//设置刷屏颜色
-
- Rect rect = new Rect(30,30,50,50);//这里最后两个参数不是宽高、而是矩形右下角的坐标
- canvas.drawRect(rect, paint);
-
- RectF rectf = new RectF(70f,30f,90f,90f);//RectF 只是矩形 float形式 只是跟Rect精确度不一样
- canvas.drawArc(rectf, 0, 360, true, paint);//这也是画圆 第三个参数为半径
-
- canvas.drawCircle(150, 30, 20, paint);
-
- float[] points = new float[]{200f,10f,200f,40f,300f,30f,400f,70f};
- canvas.drawLines(points, paint);
- canvas.drawLines(points,1, 4,paint);//选取特定点数组中两点来画出一条直线.注意:参数"1"指的是起点(10f,200f),
- //参数"4"指的是终点(40f,300f);
- canvas.drawText("moonfish", 230, 30, paint);
- }
- }
AndroidGamesTest1.zip
阅读(541) | 评论(0) | 转发(0) |