Анимация ImageView в масштабе XML делает изображение псевдонимом - PullRequest
1 голос
/ 12 апреля 2011

У меня есть небольшая XML-анимация, которая оживляет несколько изображений в моем макете.На самом деле это анимация wavecale из примера api demos sdk.Эта анимация масштабирует изображение вверх, а затем вниз до его исходного размера, чтобы оно выглядело как волна.Проблема в том, что когда изображение масштабируется, оно выглядит очень плохо, края совмещены, а изображение блочное.Моя анимация выглядит следующим образом:

<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">
    <alpha
        android:fromAlpha="0.0"
        android:toAlpha="1.0"
        android:duration="100" />
    <scale
        android:fromXScale="0.5" android:toXScale="1.25"
        android:fromYScale="0.5" android:toYScale="1.25"
        android:pivotX="50%" android:pivotY="50%"
        android:duration="200" />
    <scale 
        android:fromXScale="1.25" android:toXScale="1.0"
        android:fromYScale="1.25" android:toYScale="1.0"
        android:pivotX="50%" android:pivotY="50%"
        android:startOffset="200"
        android:duration="100" />
</set>

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

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/myimage_img"
    android:antialias="true"
    android:filter="true"
    android:tileMode="disabled"
/>

И мой ImageView выглядит так:

<ImageView android:src="@drawable/myimage" android:layout_height="wrap_content" android:layout_margin="5dp" android:adjustViewBounds="true" android:layout_width="fill_parent" android:scaleType="centerInside"></ImageView>

Обратите также внимание, что изображение на самом деле не масштабируется.Само изображение больше, чем на экране.Он центрирован внутри ImageView.Но похоже, что анимация не использует исходное изображение для рендеринга с другим размером, а использует уменьшенное изображение из ImageView и снова увеличивает его.

Не могли бы вы помочь мне сделать мое изображение гладким, когдаэто анимация?

1 Ответ

0 голосов
/ 12 апреля 2011

У вас есть правильный размер изображения в зависимости от DPI вашего устройства?Даже если изображение на экране вашего компьютера выглядит большим, оно может быть небольшим на экране телефона из-за большего числа точек на дюйм.Если это так, Android должен будет увеличить изображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...