2013-03-15 48 views
0

我正在开发在线杂志应用程序。它从服务器下载50到100个html5文件并将它存储在sd卡上,并将这个html5文件显示为杂志页面。我用画廊小部件来加载HTML页面,它按我的要求工作。在图库视图中加载HTML5内容似乎很慢

但是,像在图库中加载html一些问题似乎很慢,并且页面在滑动页面时移动得太慢仍然存在。我的代码被赋予波纹管

public View getView(int position, View convertview, ViewGroup parent) { 

    try{ 
    vi = convertview; 
    final int loctn = position; 


    if (convertview == null) 
     vi = inflater.inflate(R.layout.contentsadapter, null); 
     WebView webview=(WebView)vi.findViewById(R.id.webView1); 


     webview.getSettings().setJavaScriptEnabled(true); 

     webview.loadUrl(pages.get(loctn)); 

     webview.setWebViewClient(new WebViewClient() { 

      @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url) { 
       view.loadUrl(url); 
       return true; 
      } 

      @Override 
      public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) { 
       if ((event.getKeyCode() == KeyEvent.KEYCODE_BACK) 
         && view.canGoBack()) { 
        view.goBack(); 
        return true; 
       } 

       return super.shouldOverrideKeyEvent(view, event); 
      } 

      public void onReceivedError(WebView view, int errorCode, 
        String description, String failingUrl) { 

       /*Intent intent = new Intent(Femi9Activity.this, 
         SplashScreen.class); 
       intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
       Femi9Activity.this.startActivity(intent);*/ 
      } 
     }); 
webview.getSettings().setDomStorageEnabled(true); 

    // Set cache size to 8 mb by default. should be more than enough 
    webview.getSettings().setAppCacheMaxSize(1024 * 1024 * 8); 

    webview.getSettings().setAllowFileAccess(true); 
    webview.getSettings().setAppCacheEnabled(true); 



    webview.setOnTouchListener(new OnTouchListener(){ 

     public boolean onTouch(View v, MotionEvent event) { 
      gallery.onTouchEvent(event); 
      return false; 
     } 

    }); 
     }catch(Exception e){ 

      }finally{ 

       } 
    return vi; 
      } 

      } 

所以问题是

  1. 如何提高HTML载入速度。
  2. 可我当前页面
  3. 是否有更好的方法来做到这一点上加载一个和下一个HTML页面,而无需使用画廊
+1

用户'ViewPager'而不是'Gallery' – 2013-03-15 14:39:35

+0

嘿谢谢你。你拯救了我的一天。你能回答我的第二个问题吗? – Zubair 2013-03-19 03:39:57

+0

是的,但是有什么问题? – 2013-03-19 06:56:08

回答

1

可以使用ViewPager而不是Gallery