iam使用aphid flipview库使用webview显示静态html页面。
但是,当从一个页面翻转(移动)到另一个页面时,IAM得到一些白色的框架,然后第二个页面通常被加载。
有谁能帮我,怎么去掉那个闪光的外表…
public class FlipTextViewFragment extends Fragment {
private FlipViewController flipView;
String[] urls = {"file:///android_asset/Introduction_print.html","file:///android_asset/introduction2.html"};
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
flipView = new FlipViewController(inflater.getContext(), FlipViewController.HORIZONTAL);
flipView.setAdapter(new adp(getActivity().getApplicationContext()));
return flipView;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
}
public void setText(String item) {
flipView.setAdapter(new adp(getActivity().getApplicationContext()));
}}
然后我的适配器类在这里:
软件包com.example.flipwebview;
public class adp extends BaseAdapter {
String[] urls = {"file:///android_asset/Introduction_print.html","file///android_asset/introduction2.html"};
Context con;
public adp(Context applicationContext) {
// TODO Auto-generated constructor stub
con=applicationContext;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return urls.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
WebView wv=new WebView(con);
wv.loadUrl(urls[position]);
return wv;
}}
通过使用我的代码,我可以在多个网络视图之间切换,但我遇到的问题是,当我在半个页面上切换时,我看不到我的下一个视图,它看起来是一个空白页面,在我完全切换页面后,它会被加载。下面是有关的屏幕
最佳答案
loadUrl
不是呈现本地html文件的最快方法。因为它们包含在你的应用程序中,你应该将它们的内容加载到String
并使用loadData
方法。
http://developer.android.com/reference/android/webkit/WebView.html#loadData%28java.lang.String,%20java.lang.String,%20java.lang.String%29
编辑:
还有一件事。每次翻页时,应使用ConvertView,而不是创建新的WebView。
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
WebView webView = null;
if (convertView == null)
{
webView = new WebView(con);
} else {
webView = (WebView) convertView;
}
webView.loadUrl(urls[position]);
return webView;
}}