Android:Webviews图库

我正在尝试使用Gallery小部件构建一组水平滚动的webview.问题是我不能刷视图,这当然适用于图像库.
遵循食谱代码,在活动的onCreate()I中:

g = (Gallery) findViewById(R.id.chapter_browser);
g.setAdapter(new WebViewAdapter(this));

然后适配器创建webviews并返回它们以获取所请求的索引:

   public class WebViewAdapter extends BaseAdapter {
        int mGalleryItemBackground;
        private Context mContext;

        private String[] pages = {
                "test1.html",
                "test2.html",
                "test3.html",
                "test4.html"
        };

        public WebViewAdapter(Context c) {
            mContext = c;
        }

        public int getCount() {
            return pages.length;
        }

        public Object getItem(int position) {
            return position;
        }

        public long getItemId(int position) {
            return position;
        }

        public View getView(int position, View convertView, ViewGroup parent) {
            WebView i = new WebView(mContext);

            i.loadUrl("file:///android_asset/" + pages[position]);
            i.setBackgroundResource(mGalleryItemBackground);
            i.setWebViewClient(new WebViewClient());
            i.setLayoutParams(new Gallery.LayoutParams(100,100));
            i.setInitialScale(100);
            i.setFocusable(false);
            i.setClickable(false);

            return i;
        }
    }

问题似乎是WebView坚持使用触摸事件,尽管设置了其可点击属性.我尝试为视图创建一个OnTouchEventListener,然后将事件调度到库中,但这似乎使程序崩溃.

任何线索都表示赞赏.

解决方法:

我建议您显示不同WebView的快照,而只显示中心的真实WebView作为活动WebView.我只能想象在加载大量网页的同时显示多个WebView的资源.

http://developer.android.com/reference/android/webkit/WebView.html#capturePicture%28%29

上一篇:日志


下一篇:如何通过读取存储在android内部存储器中的所有图像来创建自定义画廊