기존 이미지에 viewpager를 통한 slide 효과를 주었더니,
생각지도 못한 문제가 발생했다.
이미지 전환이 상당히 느렸다. 버버버벅….
이건 또 뭐야;;; 이제 이미지만 새로 작업하면 기능이 끝난 줄 알았는데,
페이지를 넘기던 우리 딸이 애니메이션 효과가 없으니 심심해 하는 것 같아서 넣었더니
배보다 배꼽이 더 크게 생겼다. 어헐…
왜 버벅이는지 찾아내기 위해 적용한 media player도 tts도 다 걷어냈지만 여전히 버버벅
결국 이미지 밖에 없어서 테스트 해보니 png 이미지가 문제. xxhdip로 해상도를 해놨으니 얼마나 무거웠을까.
기존에 이미지 작업 시에는 문제 없었는데 slide 효과 주면서 아마도 메모리 사용량에 무리가 간 것일 거라 추측을…
이미지를 줄이려고 보니, vector로 해야겠고.. pixabay에서 무료 svg 이미지를 새로 다운 받았다.
- android studio vector asset
project -> right click -> new -> vector asset click

2. auto change svg to xml
svg파일을 drawable에 xml로 변환 저장한다.

3. getDrawable로 vector를 불러왔다.
Drawable drawable = getActivity().getResources().getDrawable(R.drawable.elephant);

결과가 이렇다. 벡터를 가져오긴 했는데 작은 사이즈 그대로
4. src 수정
- layout xml
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:id="@+id/flashcard_img"
android:layout_marginBottom="120dp"
android:layout_marginTop="30dp"
android:layout_centerHorizontal="true" />
- gradle 추가
min version up, add supportlibrary
defaultConfig {
minSdkVersion 21
vectorDrawables.useSupportLibrary = true
}
drawable로 변경해야하는 줄 알았는데
Uri imgPath = Uri.parse("android.resource://" + getActivity().getPackageName() + "/drawable/" + eng);
mImgView.setImageURI(imgPath);
로도 잘 동작 하는 듯.

https://code.google.com/p/android/issues/detail?id=202019
http://stackoverflow.com/questions/34936590/why-isnt-my-vector-drawable-scaling-as-expected