2015-06-18 54 views
-1

爲什麼這段代碼不運行?當運行應用程序時,我面臨着停止的應用程序錯誤消息..不要運行對象動畫器

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

回答

1

你的代碼的基本問題是你創建了一個ObjectAnimator的數組,但是你沒有用實際的對象填充數組(默認情況下所有的數組元素都是空的)。

您的程序崩潰,因爲imganim[0]爲空,您試圖調用空對象上的方法(這樣做總是會導致崩潰)。

至少需要將一個對象分配給數組元素,然後才能訪問它。

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

不過雖然,只會阻止你的程序崩潰,我真的不知道你真正想要完成的。上面的代碼實際上不會「做」任何事情。

請參閱http://developer.android.com/reference/android/animation/ObjectAnimator.html尋求幫助。

0

你需要調用ObjectAnimator#start()您的實例(一個或多個)。否則,您將擁有一個尚未啓動的已構建且可隨時啓動的動畫製作工具。