# 使用動畫的注意事項
## OOM的問題
> 這個問題主要出現在幀動畫中,當圖片數量過多的且圖片較大的時候就極易出現OOM,這個在實際的開發中要尤其注意,盡量避免使用幀動畫。
## 內存泄漏的問題
> 在屬性動畫中有一類無限循環的動畫,這類動畫需要在Activity退出時及時停止,否則導致Activity無法釋放從而造成內存泄露,通過驗證發現View動畫(幀動畫和補間動畫)并不存在此問題。
## 兼容性問題
> 動畫在3.0以下的系統上有兼容性問題,在某些特殊場景可能無法正常工作,因此要做好適配工作。
## View動畫的問題
> View動畫對View的影像做動畫,并不是真正的改變View的狀態,因此有時候會出現動畫完成后View無法影藏的現象,即`setVisibility(View.GONE)`失效了,這個時候只要調用`view.clearAnimation()`清除View動畫即可解決此問題。
## 不要使用px
> 在進行動畫的過程中,要盡量使用dp,使用px會導致在不同的設備上有不同的效果。
## 動畫元素的交互
> 將View移動(平移)后,在Android3.0之前的系統上,不管是View動畫還是屬性動畫,新位置均無法觸發單擊事件,同時老位置任然可以觸發單擊事件。盡管View已經在視覺上不存在了,將View移回原位置以后,原位置的單擊事件繼續生效。從3.0開始,屬性動畫的單擊事件觸發位置為移動以后的位置,但View動畫仍然在原位置。
## 硬件加速
> 使用動畫的過程中,建議開啟硬件加速,這樣會提交動畫的流暢性。
- 寫在前面的話
- Java
- 基礎
- Double的比較
- 小數怎么用二進制表示
- 多線程
- 并發和并行
- 線程池
- 線程池背景
- 線程池構造
- 任務阻塞隊列
- Flutter
- 基礎知識
- Dart基礎
- Android
- 項目架構
- View
- 非UI線程更新View
- AlarmManager
- 對比postDelaryed和Timer
- Bitmap
- 加載100M的圖片卻不撐爆內存
- Bitmap壓縮
- Bitmap局部解碼
- 計算圖片的內存占用
- Android動畫
- Android動畫類型
- Android動畫原理
- 屬性動畫
- 幀動畫
- 補間動畫
- 使用動畫的注意事項
- Android新特性
- 權限組
- Android23(Marshmallow)-6.0
- Android24(Nougat)-7.0
- Android26(Oreo)-8.0
- Android28(Pie)-9.0
- Android29(Q)-10.0
- AndroidX遷移
- Kotlin
- 關鍵字
- Kotlin操作符
- CoroutineScope
- Flow
- CoroutineException