XML-атрибут для указания pivotXType и pivotYType в ScaleAnimation
это может показаться глупым, но я не могу найти нигде, как указать pivotXType и pivotYType ScaleTAnimation.
Я знаю, как это сделать программно, но мне нужно указать его через XML (мне это нужно для перехода между действиями, используя метод overridePendingTransition)
вот код, который работает:
Animation animation=new ScaleAnimation(1,0,1,0,ScaleAnimation.RELATIVE_TO_SELF,(float)0.5,ScaleAnimation.RELATIVE_TO_SELF,(float)0.5);
animation.setDuration(1000);
Heres XML, без атрибута XML im ищет
<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1"
android:toXScale="0"
android:fromYScale="1"
android:toYScale="0"
android:pivotX="0.5"
android:pivotY="0.5"
android:duration="2000"
/>
Я проверил документацию по http://developers.androidcn.com/reference/android/view/animation/ScaleAnimation.htmlно ответа не нашел. Спасибо.
2 ответов
надеюсь, никто даже не потрудился прочитать мой вопрос. Я делал ошибку при написании xml, вот правильный код для эффекта, который я хотел (масштабирование новой активности от 100% размера до 0% размера, прямо в середине экрана). Правильные значения для pivotX и pivotY-50% вместо 0,5.
<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="1"
android:toXScale="0"
android:fromYScale="1"
android:toYScale="0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="600"
/>
Я знаю, что ответ уже опубликован, но я подумал, что напишу несколько слов объяснения.
В XML-сводках можно задать три типа значений (например, с помощью value 50
):
50%
- проценты; соответствует типу поворотаAnimation.RELATIVE_TO_SELF
.50%
в основном означает, что он будет вращаться в середине представления.50%p
- родительские проценты; соответствующие типу поворотаAnimation.RELATIVE_TO_PARENT
.50%p
означает, что он будет вращаться в середине родительского представления.50
- абсолютный; соответствующий типу поворотаAnimation.ABSOLUTE
.50
означает поворот на50
пиксели сверху / слева (зависит от типа pivot - y/x)