1碎鑽
本人初入Android領域, 發言有錯請見諒
小生正在嘗試為一個多人連線遊戲寫一個船戰結束的動畫,當玩家操縱的船被擊沉就會運行該動畫
假如只是該船爆炸的動畫小生可以用frame by frame animation做出來
但要求是以該船為中心, 在某範圍內的船都需要顯示出來(會從服務器得到船只座標)
所以小生的構思就是, 該船位於中心並顯示爆炸動畫
而在範圍內的船就以drawable bitmap來顯示
範圍內別的船是bitmap檔
爆炸動畫都是bitmap檔
可是在技術上遇上問題
drawable小生只會用另外一個class來設一個新的view(命名為drawView)然後在drawView上畫bitmap圖
而爆炸的動畫小生只會在activity_main.xml (原本內置的view)弄一個imageView, 然後動畫一張一張圖的播放
問題來了:
在以上兩個情況小生動用了兩個view, MainActivity裡定義任何一個都不能顯示另外一個view:
DrawView drawView;
setContentView(R.layout.activity_main);
setContentView(drawView);
想請問有方法能在activity_main.xml裡顯示bitmap圖片嗎,需要能在activity裡getXY()得到座標指定位置的
或者有方法能在drawView裡面顯示動畫嗎??
或者有其他更好的解決方法?
另外小生有想過另外一個方法
整個動畫都只用drawable去畫bitmap
可是問題是小生不懂得如何消除已畫在view上的bitmap
以及如何設定畫bitmap動作的延遲
意思為:
1sec. 顯示各個船只
2sec. 中心船只(玩家控制的船被擊沉)船身(左下方)顯示小爆炸
3sec. 船身右上方顯示小爆炸
4sec. 船身中心及右下方顯示小爆炸
5sec. 船身顯示大爆炸
6sec. 中心船只船身只餘下殘骸並冒煙
如何在期望的時間消除上一秒的圖片並顯示該秒的圖片?
注: 除了中心船只, 其他船只並無動畫, 只會靜態顯示
|
最佳答案
查看完整內容
如果你是用類似 custom view 的方式,那只要在你 setContentView 中所設定的 xml 中,放入你的 View 就可以了。
例如:你的
package name 是 com.test
view class name 是 MyView.java只要在 main.xml 中,加入這樣應該就解決你的問題了
|