可以用Handler處理,定義常量private static final int REMOVE_VIEWS = 0x112;
在onAnimationEnd里面發送消息mHandler.sendEmptyMessage(REMOVE_VIEWS);
在Handler里面的handleMessage函數里面加個case進行處理
case REMOVE_VIEWS:
mAnimLayout.removeAllViews();
break;
在onAnimationEnd里面發送消息mHandler.sendEmptyMessage(REMOVE_VIEWS);
在Handler里面的handleMessage函數里面加個case進行處理
case REMOVE_VIEWS:
mAnimLayout.removeAllViews();
break;
2015-08-02
我也遇到過報空指針的異常,主要就是mAnimLayout.removeAllViews();
在onend里調用引起的。使用以下方法就可以解決掉該問題了,將remove操作放在handler中處理即可
Handler h=new Handler();
h.post(new Runnable() {
@Override
public void run(){
mAnimLayout.removeAllViews();
}
});
在onend里調用引起的。使用以下方法就可以解決掉該問題了,將remove操作放在handler中處理即可
Handler h=new Handler();
h.post(new Runnable() {
@Override
public void run(){
mAnimLayout.removeAllViews();
}
});
2015-07-28
已采納回答 / yestar
(1)游戲的RelativeLayout中添加成員變量isAnim,判斷是否正處于進行交換圖片的動畫中private boolean isAnim = false;//正在進行動畫(2)onClick方法最先判斷,若正處于兩個圖片交換的動畫中,對點擊其它圖片的事件不做響應public void onClick(View v) { if(isAnim) { return; }(3)動畫開始isAni置為truepublic void onAnimationStart(Animation animat...
2015-07-27