我正在使用 FragmentStatePagerAdapter
在 ViewPager
中列出我的 Fragmets
。每个 fragment 仅包含一个WebView
。一切正常,我只是想使用 PagerAdapter
的预加载机制,它提前加载 1 Fragment
。这是我的 Fragment
的简化代码:
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.inflate(R.layout.ecard_fragment, container, false);
webview = (WebView) view;
webview.loadDataWithBaseURL("", HTML, "text/html", "utf-8", "");
Toast.makeText(getActivity(), "fragment: " + NAME, Toast.LENGTH_SHORT).show();
return view;
}
我确定,下一个 Fragment
是预先生成的,因为 Toast
是提前显示的。但是 WebView
稍后加载 - 就在 Fragment
聚焦之后。如何强制WebView
加载?
最佳答案
在 OnCreate() 方法中创建 Web View ,并稍后在 OnCreateView() 方法中膨胀该 Web View 。
您的 WebView 稍后加载,因为 onCreateView() - 仅当 fragment 需要向用户加载 UI 时才会调用该方法。
另一方面,OnCreate() 在 OnCreateView() 之前调用,并且可以实例化 fragment 的基本元素
关于android - 在PagerAdapter中预加载Fragment的WebView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16281838/