-1

このコードが実行されないのはなぜですか? アプリを実行すると、停止したアプリのエラーメッセージが表示されました..

ImageButton img=(ImageButton)findViewById(R.id.img0);
        ObjectAnimator[] imganim = new ObjectAnimator[10];
        imganim[0].setTarget(img);
4

2 に答える 2

1

コードの基本的な問題は、ObjectAnimator の配列を作成したが、実際のオブジェクトで配列を埋めていないことです (すべての配列要素はデフォルトで null です)。

nullが原因でプログラムがクラッシュimganim[0]し、null オブジェクトでメソッドを呼び出そうとしています (これを行うと、常にクラッシュが発生します)。

少なくとも、オブジェクトを配列要素に割り当てる必要があり、それからアクセスできます。

imganim[0] = new ObjectAnimator();
imganim[0].setTarget(img);

それでも、それはあなたのプログラムがクラッシュするのを防ぐだけですが、あなたが実際に何を達成したかったのかはよくわかりません. 上記のコードは、実際にはまだ何も「実行」しません。

ヘルプについては、 http://developer.android.com/reference/android/animation/ObjectAnimator.htmlを参照してください。

于 2015-06-18T01:19:31.303 に答える