通过WebView设置加载不同的网址

问题描述:

我有一个加载网址的WebView应用程序,我想创建一个设置活动,用户可以在其中自定义设置.. 我的问题是,如何制作单击按钮时会打开的RadioButton或Chooser移动版本的网站,同样如果桌面版本。被点击,网页流量会加载桌面版本...通过WebView设置加载不同的网址

默认的WebView加载移动网站,如果要强制加载桌面网站,你可以使用

String newUA= "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.4)Gecko/20100101 Firefox/4.0"; 
mWebView.getSettings().setUserAgentString(newUA); 

使用单选按钮来选择这个设置。使用isChecked()检查单选按钮,否则加载正常的webview。

下面是WebView代码。

public class WebViewLinks extends Activity { 

    WebView webView; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.web_view); 
     String Url = getIntent().getExtras().getString("Url"); 
     webView = (WebView) findViewById(R.id.webView); 
     webView.setWebViewClient(new MyWebClient()); 
     WebSettings webSettings = webView.getSettings(); 
     webSettings.setJavaScriptEnabled(true); 
     webView.loadUrl(Url); 
    } 

    public class MyWebClient extends WebViewClient { 

     @Override 
     public void onPageStarted(WebView view, String url, Bitmap favicon) { 
      super.onPageStarted(view, url, favicon); 
     } 

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

    } 
} 

您可以在按钮单击或单选按钮选择上使用以下代码。

Intent webViewIntent = new Intent(this, WebViewLinks.class); 
webViewIntent.putExtra("Url", yourURL); 
startActivity(webViewIntent); 

看下面的例子。

radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { 
      @Override 
      public void onCheckedChanged(RadioGroup group, int checkedId) { 

       if(checkedId == R.id.mobileview){ 
        Intent webViewIntent = new Intent(this, WebViewLinks.class); 
        webViewIntent.putExtra("Url", mobileURL); 
        startActivity(webViewIntent); 
       }else if(checkedId == R.id.desktopview){ 
        Intent webViewIntent = new Intent(this, WebViewLinks.class); 
        webViewIntent.putExtra("Url", deskTopURL); 
        startActivity(webViewIntent); 
       } 
      } 
     }); 

你可以试试下面的代码

 if(rbtnMobile.isChecked){ 
     webview.getSettings().setJavaScriptEnabled(true); 
     webview.getSettings().setUserAgentString("Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3"); 
  webview.loadUrl(url); 
    }else{ 
    webview.loadUrl(url); 
    }