2013-08-26 3 views
-2

나는 WebView을 가지고 있으며, WebService에서 데이터를 받고 있습니다. 내 문제는 데이터가 너무 많아서 사용자가 클릭 할 때 브라우저에없는 다음 페이지에 WebView에로드해야합니다. 어떻게 그럴 수 있습니까? 나는 shouldOverrideUrlLoading을 시도했지만 작동하지 않습니다.다음 활동의 Android-Webview로드 렐

+0

다음 페이지로 이동 나는 새로운 활동 화면을 의미한다고 생각합니다.? 내가 맞습니까? – SKK

+0

@Santhosh :: 예. –

답변

0

시도해보십시오.

public class WebViewActivity extends Activity { 
    private ProgressDialog progressBar; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     progressBar = ProgressDialog.show(this, "Hi", "me"); 
     WebView webView = (WebView) findViewById(R.id.webView1); 

     webView.setWebViewClient(new MyWebViewClient()); 
     webView.loadUrl("http://www.mysite.com/android.php"); 
    } 

    private class MyWebViewClient extends WebViewClient { 

     @Override 
     public void onPageFinished(WebView view, String url) { 
      if (progressBar != null && progressBar.isShowing()) { 
       progressBar.dismiss(); 
      } 
     } 

     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      System.out.println("here"); 


      //Upadated code.......... 

      Bundle bundle = new Bundle(); 
      //Add your data from getFactualResults method to bundle 
      bundle.putString("NextUrl", url); 

      Intent i = new Intent(WebViewActivity.this, NextActivity.class); 
      i.putExtras(bundle); 
      startActivity(i); 

      //----------------------- 

      Log.i("Hi", "WEb nextttt"); 

      return true; 
     } 
    } 
} 


NextActivity 


public class NextActivity extends Activity { 

    WebView wv1; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main2); 

     Bundle bundle = getIntent().getExtras(); 

     //Extract the data… 
     String url = bundle.getString("NextUrl");   


     Log.i("Hi", "Get next"); 
     wv1 = (WebView) findViewById(R.id.webView1); 
     wv1.getSettings().setJavaScriptCanOpenWindowsAutomatically(false); 
     wv1.getSettings().setSupportZoom(false); 
     wv1.getSettings().setSupportMultipleWindows(false); 
     wv1.setHorizontalScrollBarEnabled(false); 
     wv1.setVerticalScrollBarEnabled(false); 
     wv1.getSettings().setUseWideViewPort(true); 
     wv1.getSettings().setLoadWithOverviewMode(true); 
     wv1.setWebViewClient(new WebViewClient() { 
      public boolean shouldOverrideUrlLoading(WebView viewx, String urlx) { 
       viewx.loadUrl(urlx); 
       return false; 
      } 
     }); 
     try { 
      wv1.loadUrl(url); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } 

} 
+0

Dude..how 이전 페이지를 클릭 한 동일한 URL을 표시 할 수 있습니까? ?? –

+0

본인은이 코드를 업데이트합니다. –

관련 문제