android游戏开发一:背景图片的移动
来源:互联网 发布:铭牌制作软件 编辑:程序博客网 时间:2024/05/30 05:00
此demo实现屏幕的原理就不每过100毫秒就刷新背景图片显示坐标。
代码如下:
import java.util.Random;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.os.Bundle;import android.util.DisplayMetrics;import android.util.Log;import android.view.View;import android.view.Window;import android.view.WindowManager;public class MainActivity extends Activity {DisplayMetrics metric;float width = 0;float height = 0;private float startX = 0;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//全屏显示requestWindowFeature(Window.FEATURE_NO_TITLE);getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);metric = new DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(metric);width = metric.widthPixels; // 屏幕宽度(像素)height = metric.heightPixels; // 屏幕高度(像素)setContentView(new XueshanMap(MainActivity.this));}public class XueshanMap extends View implements Runnable{/**背景图片**/private Bitmap bitmap = null;/**贴图**/private Bitmap bit2 = null;/**计数器**/public int count = 0;float miDTX = 0; // 代表图片左边的横坐标 用来左右移动图片float miDTY = 280; // 代表图片左边的横坐标 用来左右移动图片private float moveX = 0;public XueshanMap(Context context) {super(context);/**获取背景图片**/bitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.xueshan);/**获取贴图**/bit2 = BitmapFactory.decodeResource(context.getResources(), R.drawable.frozen1);//startX = bitmap.getWidth() - width;new Thread(this).start(); }@Overrideprotected void onDraw(Canvas canvas) {// TODO Auto-generated method stubsuper.onDraw(canvas);bitmap.getHeight();/**创建背景图片并声明图片的长宽**/Bitmap bitmap2 = Bitmap.createBitmap(bitmap, 0, 0 , bitmap.getWidth() , bitmap.getHeight());/**计数**/count++;/**每次移动位置**/moveX = 0-count*5;Random random1 = new Random();Random random2 = new Random();/**贴图随机屏幕X位置**/int x = random1.nextInt(100);/**贴图随机屏幕Y位置**/int y = random2.nextInt(100);/**绘制显示的背景图片坐标**/canvas.drawBitmap(bitmap2, moveX, 0, null);/**绘制显示的贴图坐标**/canvas.drawBitmap(bit2, x , y , null);}public void run() {// TODO Auto-generated method stubwhile (true) {/**刷新**/ postInvalidate(); Log.v("MYView HHH", String.valueOf(startX)); try { Thread.sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}}}
- android游戏开发一:背景图片的移动
- 移动开发,背景图片的处理问题
- 移动游戏开发(一)
- Android游戏开发中对象移动的例子
- 转载 Android游戏开发中对象移动的例子
- Android基于box2d开发弹弓类游戏[二]-------------游戏界面的搭建&移动游戏场景
- Android游戏开发学习(一):游戏的基本架构
- 程序员开发游戏使用的背景图片素材资源合辑
- cocos-creator 开发路程一实现可移动的游戏选择窗口(一)
- android 游戏开发-libgdx(一)
- Android游戏开发(一)
- unity游戏开发 发布android 游戏 (一)
- 使背景图片移动的方法
- 基于Nokia手机的移动游戏开发步步通(一)
- 基于Nokia手机的移动游戏开发步步通(一)
- 基于Nokia手机的移动游戏开发步步通(一)
- 游戏开发之--简单的人物走动和地图移动(一)
- cocos-creator 开发路程一实现可移动的游戏选择窗口(二)
- iOS应用开发:什么是ARC?
- 理解extends与implements
- linux使用指令
- 不同运行环境下JAVA出现的异常(持续更新)
- Building Coder(Revit 二次开发)- 图形化显示区域边界
- android游戏开发一:背景图片的移动
- POJ1083,Moving Tables,好纠结的题
- 你网站不带www的域名设置301重定向了吗?
- android tablelayout
- 十二条提升Ubuntu桌面体验的技巧
- android数据库SQLite操作实例
- Taobao无线开放平台
- 查看机器上安装的.net framework版本
- 未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序