2010-08-31 78 views
0

我在我的主遊戲線程中創建了一個動畫可繪製和圖像視圖,該線程由處理遊戲線程的活動(啓動它等)配置。我在這個處理活動的代碼如下所示:動畫可繪製不在android中動畫?

  mDistractionsThread.animation.addFrame(getResources().getDrawable(R.drawable.one), 1000); 
    mDistractionsThread.animation.addFrame(getResources().getDrawable(R.drawable.two), 1000); 
    mDistractionsThread.animation.addFrame(getResources().getDrawable(R.drawable.three), 1000); 
    mDistractionsThread.animation.setOneShot(false); 

    mDistractionsThread.imageAnim =(ImageView) findViewById(R.id.img); 
    mDistractionsThread.imageAnim.setBackgroundDrawable(mDistractionsThread.animation); 


    mDistractionsThread.animation.start(); 

正如你可以看到變量mDistractionsThread是一個句柄線程本身。這編譯好,但只顯示第一幀(R.drawable.one),並沒有動畫。我錯過了什麼?

我試圖從mDistractionsThread中的run()設置animation.start(),但這只是給了我一個致命的異常,因爲View只能從改變其字段的類中改變 - 在這種情況下不是遊戲線。

我該如何解決這個問題並讓它通過框架進行動畫製作,以及在X軸上移動的獎勵點?!

非常感謝

回答

0

重要的是你開始動畫的地方。嘗試從activity中的onFocusChanged()開始。它應該幫助