Android游戏开发(一)
2014-01-12 13:21
441 查看
本专题将进行Android游戏开发的系列讲解
Android图形编程基础对于开发游戏,尤其重要。
Android图形编程的基本概念:
(一)颜色对象 Color
(二)画笔对象 Paint
(三)画布对象 Canvas
(二) int color2 = Color.argb(100, 255, 255, 255) ;
其中,函数原型为Color.argb(a, r, g, b);
a即alpha,代表颜色透明度(0代表透明; 255代表不透明;1到244则代表透明到不透明的变化)
r 即red,代表红色(代表最重的红色)
g即green,代表绿色(255代表最重的绿色)
b即blue,代表蓝色(255代表最重的蓝色)
(三) 在xml文件当中定义颜色;
例如:
设置画笔的颜色: paint.setColor(Color.blue);
例如:
在画布上画圆: canvas.drwaCircle(300, 400, 100, paint);
其中,第一个参数表示圆的横坐标,第二个参数表示圆的纵坐标,第三个参数表示圆的半径,第四个参数表示画笔对象。
(二)复写View的onDraw函数;
(三)在onDraw当中使用Canvas和Paint对象绘制图形;
新建或者打开MainActivity,添加如下代码:
在MyView类中,主要继承了View,并重写了onDraw方法,在这个方法里面,画一个圆。
在MainActivity中,创建MyView对象,并显示myView。
运行一下程序,效果如下图:
Android图形编程基础对于开发游戏,尤其重要。
Android图形编程的基本概念:
(一)颜色对象 Color
(二)画笔对象 Paint
(三)画布对象 Canvas
1. 颜色对象 Color
(一) int color1 = Color.blue;(二) int color2 = Color.argb(100, 255, 255, 255) ;
其中,函数原型为Color.argb(a, r, g, b);
a即alpha,代表颜色透明度(0代表透明; 255代表不透明;1到244则代表透明到不透明的变化)
r 即red,代表红色(代表最重的红色)
g即green,代表绿色(255代表最重的绿色)
b即blue,代表蓝色(255代表最重的蓝色)
(三) 在xml文件当中定义颜色;
2. 画笔对象 Paint
该类的对象用于控制画笔的风格和颜色等方面的信息。例如:
设置画笔的颜色: paint.setColor(Color.blue);
3. 画布对象 Canvas
该类代表一块“画布”,可以在“画布”上绘制字符、图形和图片等内容。例如:
在画布上画圆: canvas.drwaCircle(300, 400, 100, paint);
其中,第一个参数表示圆的横坐标,第二个参数表示圆的纵坐标,第三个参数表示圆的半径,第四个参数表示画笔对象。
4. 自定义View的基本实现方法
(一)定义一个类,继承View;(二)复写View的onDraw函数;
(三)在onDraw当中使用Canvas和Paint对象绘制图形;
5. 代码演示
新建一个工程,名为shudu01。新建一个类,名为MyView,添加代码如下:package com.cfy.shudu01; 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 { public MyView(Context context) { super(context); // TODO Auto-generated constructor stub } @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub super.onDraw(canvas); //新建画笔对象 Paint paint = new Paint(); //设置画笔颜色为蓝色 paint.setColor(Color.BLUE); //在画布上画圆,横坐标为100,纵坐标为200,半径为50, canvas.drawCircle(100, 200, 50, paint); } }
新建或者打开MainActivity,添加如下代码:
package com.cfy.shudu01; import android.os.Bundle; import android.app.Activity; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_main); //创建MyView对象 MyView myView = new MyView(this); //显示myView setContentView(myView); } }
在MyView类中,主要继承了View,并重写了onDraw方法,在这个方法里面,画一个圆。
在MainActivity中,创建MyView对象,并显示myView。
运行一下程序,效果如下图:
相关文章推荐
- android游戏开发须知!
- android网络游戏开发——网络通信——回调函数例子
- android游戏开发框架libgdx的使用(十二)—TiledMap地图的使用
- Android 3D游戏开发
- (转)【Android游戏开发之四】Android 游戏框架(一个游戏角色在屏幕行走的demo)
- Android研究院之游戏开发帧动画(三)
- 【Android游戏开发十七】让玩家自定义手势玩转Android游戏!
- 【Android游戏开发二十二】(图文详解)游戏中灵活实现动画播放!简述J2me的游戏类库与Android游戏开发!
- android+unity游戏开发之我们第一个脚本
- Android游戏开发之切换游戏场景特效的实现 (十九)
- 【Android游戏开发十二】(保存游戏数据 [上文])详解SharedPreference 与 FIleInputStream/FileOutputStream将数据存储到SD卡中!
- Android游戏开发的开源框架
- [android游戏开发初学]简单的游戏框架
- Android游戏开发设计步骤
- Android游戏开发起步(译文)
- Android游戏开发属性
- 云平台编程与开发(五):开发Android网络游戏的一点探讨
- Android游戏开发学习路线
- [ IOS-Cocos2d-x (Box2d)游戏开发之四] -Cocos2d-x for android 使用Box2d报错解决
- 【Android游戏开发十二】(保存游戏数据 [上文])详解SharedPreference 与 FIleInputStream/FileOutputStream将数据存储到SD卡中!