我使用NineOldAndroids' ObjectAnimators在Android的地圖標記V2淡出用下面的代碼:NineOldAndroids ObjectAnimators不使用ProGuard工作並簽署APK
mMarkerSelected = mMap.addMarker(new MarkerOptions()
.position(location.getLatLng())
.title(location.getName())
.snippet(location.getId())
.icon(BitmapDescriptorFactory.defaultMarker(location.getMarkerHue())));
mMarkerSelected.setAlpha(0.0f);
ObjectAnimator.ofFloat(mMarkerSelected, "alpha", 0.0f, 1.f)
.setDuration(300).start();
這與APK的可調試版本的完美作品。
但是,當我簽署我的apk並使用ProGuard時,突然標記不會淡入。我的猜測是alpha屬性已被混淆,因此"alpha"
到ObjectAnimator.ofFloat
與混淆的alpha屬性不匹配Marker
。如何在使用ProGuard時使動畫起作用?
只是爲了保持完整性,這是我的ProGuard-rules.txt的唯一內容
-dontwarn com.squareup.okhttp.**
謝謝!我用'-keepclassmembers類com.google.android.gms.maps.model.Marker {*; }'。你能否更新答案,還是應該讓我的個人班使用ObjectAnimator? – well
你也可以做,我個人會有一個類來控制動畫,但不會推動標記也沒問題 – Blundell