/ / Animacja w skali Xml w ImageView sprawia, że ​​obraz jest aliasingowany - Android, animacja, filtr, widok obrazu

Animacja w skali Xml z ImageView sprawia, że ​​obraz jest aliasingowany - Android, animacja, filtr, widok obrazu

Mam małą animację xml, która ożywia niewieleImageViews w moim układzie. Właściwie jest to animacja wavecale z przykładu api demos sdk. Ta animacja skaluje obraz, a następnie w dół do jego pierwotnego rozmiaru, więc wygląda na falę. Problem polega na tym, że obraz jest przeskalowany, wygląda bardzo źle, krawędzie są aliasingowane, a obraz jest zablokowany. Moja animacja wygląda następująco:

<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>

Zamiast ładować obraz bezpośrednio w src ImageView, próbowałem go zawinąć w element bitmapowy xml i włączyć wygładzanie i filtrowanie, ale nie robi to żadnej różnicy.

<?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"
/>

A mój ImageView wygląda tak:

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

Należy również pamiętać, że obraz nie jest tak naprawdęskalowane. Sam obraz jest większy, niż pojawia się na ekranie. Jest wyśrodkowany wewnątrz ImageView. Wygląda jednak na to, że animacja nie korzysta z oryginalnego obrazu w celu renderowania go w innym rozmiarze, ale przy użyciu przeskalowanego obrazu z ImageView i skalowania go ponownie.

Czy możesz mi pomóc, aby mój obraz wyglądał gładko, gdy jest animowany?

Odpowiedzi:

0 dla odpowiedzi № 1

Czy masz odpowiedni rozmiar obrazu na podstawie swojegourządzenie DPI? Chociaż na ekranie komputera obraz wygląda na duży, obraz może być mały na ekranie telefonu z powodu większej liczby punktów na cal. W takim przypadku system Android będzie musiał skalować obraz w górę.