Bunun sonucunda HASHTAGS Müşterilerimiz, sosyal medya içeriklerini güvenilir bir şekilde yönetmelerine yardımcı olmamız için bize güveniyor. Sprout müşterileri, mobil iOS ve Android uygulamalarımızı kullanır, böylece kendi hareket halindeyken sosyal medya . Desteklemek için Android mesaj Oluşturma deneyimimizi güncellemeye karar verdiğimizde yayınlama Bir Tweete birden fazla resim eklendiğinde, Oluşturma ekranında görünmese bile birden fazla resim eklendiğinde kullanıcıya bunu netleştirmek istedik.



Tasarım Çözümü: Ekran Dışındaki Görüntüleri Göstermek için Animasyon Kullanın

Tasarımımız ve mobil ekranın kısıtlamaları göz önüne alındığında, ekli görüntülerin ekran dışında kalması mümkündü. Bu ideal olmasa da, Oluşturma ekranında desteklenen işlevselliğin yoğunluğu göz önüne alındığında gerekli bir tavizdi. Görüntülerin aslında ekran dışında olduğu durumlarda, görüntü listesinin kaydırılabilir olduğunu gösteren yatay bir 'sıçrama' animasyonu uygulamaya karar verdik.



Uygulama Seçimi: ObjectAnimator + EasingInterpolator

Android'de temel animasyonları destekleyen birçok mekanizma vardır. Bazıları kodda, diğerleri xml'de yapılandırma gerektirir. Alternatifler arasından seçim yaparken, geriye dönük uyumluluğa (sdk 15+ sürümünü destekliyoruz), uygulama basitliğine ve yapılandırılabilirliğe öncelik vermeye karar verdik. Nihayetinde, bir kombinasyon kullanmaya karar verdik ObjectAnimator ve Kolaylaştırma . Bunların her ikisi de, sonuçta daha geliştirici dostu olan Java kodunda yapılandırılabilir: Sözdizimi tanıdıktır ve animasyon mantığı, kod tabanında tek bir konumda tamamen tanımlanabilir.

ObjectAnimator, Android çerçevesi tarafından sağlanan ve bir Görünümün Özelliğinin değiştirilmesine izin veren bir sınıftır. ObjectAnimator için varsayılan enterpolatörün hareketi kullanım durumumuz için doğal gelmediğinden, birçok farklı enterpolasyon modeli sağlayan kullanışlı bir kitaplık olan EasingInterpolator'ı kullanmaya karar verdik.

android-sıçrama-animasyonu-hareket hızı-örneği

Sıçrama Animasyon Kodu

private void doBounceAnimation(View targetView) { ObjectAnimator animator = ObjectAnimator.ofFloat(targetView, 'translationX', 0, 25, 0); animator.setInterpolator(new EasingInterpolator(Ease.ELASTIC_IN_OUT)); animator.setStartDelay(500); animator.setDuration(1500); animator.start(); }

Neyse ki, bu davranışı ele alacak kod çok kısa. 1. Satırda, targetView’u nasıl canlandırmak istediğimizi belirliyoruz. Bu durumda, yerleşimden sonra görünümün x konumu olan targetView'un 'translationX' Özelliğini değiştirmek istiyoruz. Başlangıç ​​konumundan sağa doğru 25dp'lik bir ofsete 0dp'lik bir ofsetten animasyon uygulamak ve nihayetinde orijinal 0dp ofsetine geri dönmek istiyoruz.

2. satırda, istediğimiz enterpolasyon türünü belirliyoruz. Farklı enterpolasyon modelleriyle oynadık, ancak sonunda Ease'e karar verdik.ELASTIC_IN_OUT, kullanım örneğimiz için en iyiyi gösterdi.

Oluşturmada HASHTAGS Android Geri Dönme Animasyonu

Android'de Mülk animasyonunu destekleme hakkında daha fazla bilgi için, Mülk Animasyonu geliştirici belgesi .



Hareketli Animasyon

Mobil Yazma deneyimine yaptığımız güncellemelerden gerçekten memnunuz. İlerlerken, mobil deneyimimizi duyarlı görsel arayüzlerle zenginleştirmeye devam etmeyi planlıyoruz. Bizimle bu tür şeyler üzerinde çalışmak ister misiniz? Gel bizimle çalış Android mobil ekibimizde!

Arkadaşlarınla ​​Paylaş: