В настоящее время у меня есть ImageView
, который увеличивает длину устройства и масштабируется на 3. Очевидно, стороны обрезаны снаружи экран. Я хочу, чтобы анимация начиналась с левой стороны изображения на левой стороне устройства, а затем сдвигала ее, пока правая часть изображения не оказалась на правой стороне устройства.
Я могу достичь их, настроив изображение на его исходную основу, а затем в основном сделав это:
<objectAnimator
android:propertyName="translationX"
android:duration="6000"
android:valueTo="-1280"
android:valueType="floatType"
/>
Однако это работает только потому, что я знаю точный размер изображения и точный размер моего Motorola Xoom. Естественно, я хочу, чтобы это работало на любом устройстве, поэтому мне нужно что-то менее жестко запрограммированное. С анимацией Tween это работает нормально, так как вы можете переводить что-то, основываясь на процентном соотношении его размера. Он не был идеальным, но для этого эффекта он работал достаточно хорошо. Похоже, что у анимации свойств этого нет. Свойства translationX
и X
должны иметь единицы измерения.
Есть ли простой способ перевести представление с анимацией свойств на основе относительного местоположения? Придется ли мне создавать отдельный файл анимации для каждого измерения? Есть ли другой способ добиться такого эффекта? Я бы предпочел не делать свою собственную анимацию.