ViewPager를 사용하여 인터넷에서 가져와야하는 무한한 이미지 모음을 찾아 볼 수 있습니다.다음 페이지의 콘텐츠가 준비 될 때까지 ViewPager의 페이지 전환을 피하십시오.
이미지가 이미로드되어 있지 않으면 다음/이전 페이지로 변경하고 싶지 않습니다. 따라서 사용자가 오른쪽/왼쪽으로 스 와이프하면 현재 이미지가 계속 표시되고 진행률 막대가 위로 회전하며 다음/이전 페이지로의 변경은 이미지가 준비 될 때까지 수행되지 않습니다. 즉각적인 페이지가 바뀌면 진행률 표시 줄이 사라집니다.
지금은 ViewPager 및 FragmentStatePageAdapter의 하위 뷰에 대해 다음 레이아웃을 사용하여 구현하려고했습니다. 내가 ProgressBar를 볼 수 있도록 자사의 onCreateView에서
- 다음 조각에서
본인은 아래의 단계를 수행합니다.<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ImageView android:id="@+id/imageview" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:contentDescription="@string/label_painting" android:visibility="gone" /> <ProgressBar android:id="@+id/progressbar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:visibility="gone" /> </FrameLayout>
- 동일한 방법으로 이미지를 가져 와서 바이트 스트림을 비트 맵으로 디코딩하는 스레드를 시작합니다.
- 비트 맵을 사용할 수있게되면 스레드는 ImageView에 비트 맵을 설정하고 처리기를 보이게하고 진행률 표시 줄을 숨기는 처리기에 메시지를 전송합니다.
이 접근법의 문제점은 다음과 같습니다. 사용자가 스 와이프 할 때 이미지를 가져 오지 않은 경우 이전 이미지가 사라지고 새 이미지를 사용할 수있을 때까지 회전 진행률 막대가 표시됩니다. 계속해서 이미지를 보는 것이 훨씬 더 좋을 것입니다.
누구나 ViewPager로 이것을 구현할 수 있었는지 또는 코드에서 변경할 수있는 것을 알고 있습니까?
미리 감사드립니다.