Android 台灣中文網

標題: 最近在研究timer控制轉場 [打印本頁]

作者: hl2dm    時間: 2012-10-1 16:53
標題: 最近在研究timer控制轉場
大家好
我是沒有程式基礎
剛開始學java與android沒多久的學生

最近想做個APP遊戲(純粹練習用)

我看很多遊戲一開始都會放公司LOGO慢慢暗下來才進入畫面
一開始是想嘗試放個影片
於是看了網路上的教學寫了這段
  1.         Uri uri = Uri.parse("android.resource://"+context.getPackageName()+"/"+R.raw.videoName);
  2.                 VideoView videoView = (VideoView)this.findViewById(R.id.video_view);
  3.                 videoView.setMediaController(new MediaController(this));
  4.                 videoView.setVideoURI(uri);
  5.                 //videoView.start();
  6.                 videoView.requestFocus();
複製代碼
但是教學最後提到的這段卻發生錯誤

  1. // 加入播放結束的 Callback
  2. video.setOnCompletionListener(onMovieCompleteHandler);
複製代碼
而且影片也無法自動播放都必須去點">"才行
如果可以自動播放就能隱藏控制元件這樣就可以放LOGO元件

於是我改採用放圖片的方式
用補間動畫的方式去做似乎挺複雜的
所以我想說能不能用timer去控制main
第一個main 放image views時間到了之後就跳有介面的main
編譯上沒有問題但是一執行就錯誤
  1. public class MainActivity extends Activity {

  2.         Timer timer;

  3.         @Override
  4.         public void onCreate(Bundle savedInstanceState) {
  5.                 super.onCreate(savedInstanceState);
  6.                 setContentView(R.layout.activity_main);
  7.                 abc();
  8.         }

  9.                         public void abc()
  10.                                  timer = new Timer();
  11.                                 timer.schedule(new TimerTask() {

  12.                                         public void run() {
  13.                                                   goToLayout1();       
  14.                                         }

  15.                                         private void goToLayout1() {
  16.                                                 setContentView(R.layout.activity_main2);
  17.                                                         timer.cancel();
  18.                                         }
  19.                                 }, 1000, 2000);
  20.                         }
  21.                
複製代碼
不管是直接在run執行還是多一個類別去執行都錯誤
可以時間到自動放音樂..但是就是不能轉main

希望板上能給些建議
感激不盡
如果問的問題太簡單
也希望能夠給我一個關鍵字去進行了解
謝謝

作者: 不知火羽    時間: 2012-10-1 22:52
本帖最後由 不知火羽 於 2012-10-1 22:54 編輯

試試看改成透過Intent 的方式呼叫另一個Activity
而不是直接換到另一個layout去 這樣應該會比較順

如果timer沒辦法 也可以試試看用handle和runnable來做
個人習慣用這兩的東西來作為計時器使用

如果你轉到另一個layout去東西都要重新連結
或是兩個layout上有不對應的東西也可能發生錯誤
(以上個人看法 僅供參考)




歡迎光臨 Android 台灣中文網 (https://apk.tw/) Powered by Discuz! X3.1