2013-02-22 39 views
0

是否可以從onItemSelected()獲取視圖數組?因爲我需要爲當前視圖設置動畫並從其他視圖中清除動畫,這有可能嗎?從AdapterView製作數組

 @Override 
     public void onItemSelected(AdapterView<?> adV, View view, int currentIndex, long l) 
     { 

       view.startAnimation(AnimationUtils.loadAnimation(currentContext, R.anim.scale_anim)); 
       adV[currentIndex + 1].clearAnimation(); 
       adV[currentIndex - 1].clearAnimation(); 

     } 
+2

'catch NullPointerException'?你是認真的嗎? – m0skit0 2013-02-22 14:33:09

+0

@ m0skit0 yup,當我從startAnimation()方法更改設備方向時發生NullPointerException! – NullPointer 2013-02-22 14:37:00

+1

你應該修復你的代碼,不要抓住NPE。 – m0skit0 2013-02-22 14:38:29

回答

2

你可以遍歷這樣的適配器視圖的孩子:

int count = adV.getChildCount(); 
for (int i = 0; i < count; i++) { 
    View v = adV.getChildAt(i); 
    view.clearAnimation(); 
} 

當然你也需要檢查的觀點是目前的一個並跳過它。

+0

謝謝,像魅力一樣工作。 – NullPointer 2013-02-22 15:09:28