Относительный перевод в анимации свойств в xml

В настоящее время у меня есть ImageView , который увеличивает длину устройства и масштабируется на 3. Очевидно, стороны обрезаны снаружи экран. Я хочу, чтобы анимация начиналась с левой стороны изображения на левой стороне устройства, а затем сдвигала ее, пока правая часть изображения не оказалась на правой стороне устройства.

Я могу достичь их, настроив изображение на его исходную основу, а затем в основном сделав это:

  <objectAnimator
    android:propertyName="translationX"
    android:duration="6000"
    android:valueTo="-1280"
    android:valueType="floatType"
  />

Однако это работает только потому, что я знаю точный размер изображения и точный размер моего Motorola Xoom. Естественно, я хочу, чтобы это работало на любом устройстве, поэтому мне нужно что-то менее жестко запрограммированное. С анимацией Tween это работает нормально, так как вы можете переводить что-то, основываясь на процентном соотношении его размера. Он не был идеальным, но для этого эффекта он работал достаточно хорошо. Похоже, что у анимации свойств этого нет. Свойства translationX и X должны иметь единицы измерения.

Есть ли простой способ перевести представление с анимацией свойств на основе относительного местоположения? Придется ли мне создавать отдельный файл анимации для каждого измерения? Есть ли другой способ добиться такого эффекта? Я бы предпочел не делать свою собственную анимацию.

9
задан DeeV 14 December 2011 в 08:23
поделиться