0
好吧,我正在構建一個使用MainActivity中的android.support.v4.view.ViewPager的應用程序。我通過服務器的JSON對象加載一些視頻地址,並希望爲每個視頻創建一個片段(以便滑入下一個視頻)。構建下一個ViewPager片段
我fragment.xml之看起來像這樣:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<VideoView
android:id="@+id/videoView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
/>
<ImageView
android:id="@+id/ImageView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:scaleType="fitXY"
/>
</RelativeLayout>
現在,我得到了下面的問題:我想呈現下一個片段,使用戶可以看到一些預覽圖像,如果他滑到下一個。此時,如果onPageScrolled()完成,我只能看到一個ImageView。
這是我的方式來獲得訪問片段瀏覽:
VideoFragment obj = (VideoFragment) pageAdapter.getItem(arg0);
VideoView meinVideo = (VideoView) obj.getView().findViewById(R.id.videoView1);
發生以下情況:如果我試圖讓訪問項目10,我得到一個空指針異常,但項pageAdapter存在。問題是這樣的一行:
VideoView meinVideo = (VideoView) obj.getView().findViewById(R.id.videoView1);
它只適用,如果片段已經呈現,F.E.在onPageSelected事件之後。
有什麼辦法強制渲染下一個碎片,以便它們在用戶滑動之前就已經建好了嗎?
嘗試調用此對您viewpager: pager.setOffscreenPageLimit(<編號,你想裝一次>); – mt523 2014-10-16 22:34:17
剛剛嘗試過。一切適用於前3卷,之後,我只得到一個黑屏和一個OutOfRange錯誤。 – user2891491 2014-10-17 13:56:44