0

アクティビティの開始時にボタンアニメーションを実行するのに問題があります。ここでは少し新しいので、提案をいただければ幸いです。これが私のアクティビティの始めに持っているものです.....

    // this is flag for home key press
public static boolean isHome = false;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
    WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.press);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);



    // init data
    init();

    // start player display
    start(10000 * 60 * 60 * 24);

    spin++;

    // play background music
    playmp3(R.raw.press);
 }
//HERE IS THE WORKING VERSION THAT WAS CORRECTED BY THE ANSWER BELOW
 public void onWindowFocusChanged(boolean hasFocus) {
     super.onWindowFocusChanged(hasFocus);

     if(hasFocus) {
     final Button b_1 = (Button) findViewById(R.id.bttest);
         b_1.setBackgroundResource(R.drawable.animation);
         AnimationDrawable b1Amin = (AnimationDrawable) b_1.getBackground();
     b1Amin.start();
    }
 }

これが私のドローアブルファイルのanimation.xmlです

<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
  android:oneshot="false">
<item android:drawable="@drawable/btn1" android:duration="100" />
<item android:drawable="@drawable/btn2" android:duration="100" />
<item android:drawable="@drawable/btn3" android:duration="100" />
<item android:drawable="@drawable/btn4" android:duration="100" />
<item android:drawable="@drawable/btn5" android:duration="100" />
<item android:drawable="@drawable/btn6" android:duration="100" />
<item android:drawable="@drawable/btn7" android:duration="100" />
<item android:drawable="@drawable/btn8" android:duration="100" />

</animation-list>
4

1 に答える 1

0

API ドキュメントには、 がまだウィンドウにアタッチされていないため、AnimationDrawable#start()呼び出してはならないことが明示的に記載されています。ドキュメントのアドバイスに従い、代わりにfromを呼び出してください。onCreate(Bundle)AnimationDrawablestart()onWindowFocusChanged(boolean)

于 2012-08-02T19:13:26.623 に答える