成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Android游戲開發(fā):如何實(shí)現(xiàn)爆炸效果

移動(dòng)開發(fā) Android 游戲開發(fā)
本文介紹了在Android游戲開發(fā)中,如何實(shí)現(xiàn)爆炸效果的代碼演示。解決了在做Android游戲MagicBubble開發(fā)的時(shí)候,連通兩個(gè)Bubbles,Bubble會(huì)以水泡爆破的問題。

在做Android游戲MagicBubble開發(fā)的時(shí)候,在連通兩個(gè)Bubbles的時(shí)候,Bubble會(huì)以水泡爆破的情形消失。筆者的思路是這樣的:在FrameLayout里面加入一ImageView,再定義一個(gè)爆炸的Animation,不需要的時(shí)候,ImageView就隱藏起來,需要的時(shí)候,就把ImageView移動(dòng)到需要的地方,再StartAnimation,這樣,就可以實(shí)現(xiàn)爆炸效果。

下面是簡(jiǎn)化后的程序的代碼,程序的效果如下:點(diǎn)中屏幕中任意地方,就在點(diǎn)擊地方顯示爆炸效果。

MagicBubble1 

MagicBubble2

首先是Animation的定義,定義一個(gè)Frame Animation,依次播放5幀動(dòng)畫,每幀動(dòng)畫持續(xù)時(shí)間為50毫秒:

  1. <animation-list xmlns:android="http://schemas.android.com/apk/res/android" 
  2. android:oneshot="true">  
  3. <item android:drawable="@drawable/explode1" android:duration="50" />  
  4. <item android:drawable="@drawable/explode2" android:duration="50" />  
  5. <item android:drawable="@drawable/explode3" android:duration="50" />  
  6. <item android:drawable="@drawable/explode4" android:duration="50" />  
  7. <item android:drawable="@drawable/explode5" android:duration="50" />  
  8. </animation-list>  

接著是主程序代碼:

  1. package com.ray.bubble;  
  2. import android.app.Activity;  
  3. import android.content.Context;  
  4. import android.graphics.drawable.AnimationDrawable;  
  5. import android.os.Bundle;  
  6. import android.view.MotionEvent;  
  7. import android.view.View;  
  8. import android.view.Window;  
  9. import android.view.WindowManager;  
  10. import android.view.View.OnTouchListener;  
  11. import android.widget.FrameLayout;  
  12. import android.widget.ImageView;  
  13. public class BubbleExplosion extends Activity {  
  14. private FrameLayout fl;  
  15. private ExplosionView exv1;  
  16. private AnimationDrawable exa1;  
  17. public void onCreate(Bundle savedInstanceState) {  
  18. super.onCreate(savedInstanceState);  
  19. //set full screen  
  20. requestWindowFeature(Window.FEATURE_NO_TITLE);  
  21. getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN ,  
  22. WindowManager.LayoutParams. FLAG_FULLSCREEN);  
  23. fl = new FrameLayout(this);  
  24. fl.setBackgroundResource(R.drawable.bg);  
  25. exv1 = new ExplosionView(this);  
  26. exv1.setVisibility(View.INVISIBLE);  
  27. exv1.setBackgroundResource(R.anim.explosion);  
  28. exa1 = (AnimationDrawable)exv1.getBackground();  
  29. fl.addView(exv1);  
  30. fl.setOnTouchListener(new LayoutListener());  
  31. setContentView(fl);  
  32. }  
  33. class ExplosionView extends ImageView{  
  34. public ExplosionView(Context context) {  
  35. super(context);  
  36. }  
  37. // 處理爆炸的位置  
  38. public void setLocation(int top,int left){  
  39. this.setFrame(left, top, left+40, top+40);  
  40. }  
  41. }  
  42. class LayoutListener implements OnTouchListener{  
  43. public boolean onTouch(View v, MotionEvent event) {  
  44. //首先,你必須停止播放動(dòng)畫,如果動(dòng)畫開始,你不能重復(fù)一遍!  
  45. exv1.setVisibility(View.INVISIBLE);  
  46. exa1.stop();  
  47. float x = event.getX();  
  48. float y = event.getY();  
  49. exv1.setLocation((int)y-20, (int)x-20);  
  50. exv1.setVisibility(View.VISIBLE);  
  51. exa1.start();  
  52. return false;  
  53. }  
  54. }  
  55. }  

配合Android的SurfaceView,Animation可以實(shí)現(xiàn)很好的過渡效果,SurfaceView的用法很簡(jiǎn)單。

【編輯推薦】

  1. GameSalad:讓每個(gè)人都變成游戲開發(fā)者
  2. Android平臺(tái)將迎來虛幻引擎游戲開發(fā)時(shí)代
  3. 國(guó)外知名游戲開發(fā)商稱Android平臺(tái)比iOS更賺錢
  4. 獨(dú)立手機(jī)游戲開發(fā)者的未來走向
  5. 高效地進(jìn)行Android 游戲開發(fā)

 

責(zé)任編輯:佚名 來源: 開發(fā)者社區(qū)
相關(guān)推薦

2013-05-21 13:33:02

Android游戲開發(fā)異步音樂播放

2024-04-24 11:09:12

Android圖標(biāo)

2011-08-29 09:49:35

LuaAndroid游戲

2013-05-21 13:55:51

Android游戲開發(fā)圖像漸變特效

2013-05-21 16:17:13

2013-05-21 15:28:31

2022-12-12 11:11:05

2011-06-27 10:45:06

BattleheartAndroid游戲開發(fā)

2013-05-20 15:42:22

2010-03-03 15:06:52

Android 游戲開

2013-07-05 10:26:40

Android

2011-07-08 15:08:16

iPhone 圖片

2011-07-22 18:20:04

IOS View 動(dòng)畫

2014-07-15 10:34:14

Android游戲引擎

2024-07-08 08:38:37

Python游戲開發(fā)

2012-05-09 14:49:23

HTML5

2023-03-23 09:09:32

前端詞云效果

2013-11-06 11:31:28

Android游戲

2012-08-10 09:22:38

CoronaCorona SDKCorona SDK游

2010-09-06 09:43:46

TCPUDPAndroid
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产伦精品一区二区三区照片91 | 1级毛片| 一区二区三区高清 | 亚洲不卡视频 | 成人在线日韩 | 国产中文字幕在线观看 | 亚洲视频在线一区 | av一级在线观看 | 男人天堂手机在线视频 | 国产区高清 | 国产91久久久久蜜臀青青天草二 | av日韩一区| 午夜视频在线观看一区二区 | 亚洲视频在线观看免费 | 国产精品久久久久久吹潮 | 亚洲在线日韩 | 福利视频一区二区三区 | 久久久久国产精品 | 久草免费在线视频 | 一区二区视屏 | 凹凸日日摸日日碰夜夜 | 365夜爽爽欧美性午夜免费视频 | 91色视频在线观看 | 亚洲欧美综合精品久久成人 | 国产综合久久久久久鬼色 | 九九九久久国产免费 | 欧美视频精品 | 黄视频网站免费观看 | 91久久久久久 | 欧美日韩一区二区在线 | 日韩三级免费观看 | 一区二区免费 | 黄色免费在线观看网站 | 成人国产免费视频 | 欧美电影一区 | 午夜国产一级片 | 午夜久草 | 亚洲成人精 | 91日b| 免费永久av| 在线精品观看 |