本文说的简单的浏览器可不能进行在线看视频、听歌等功能。
我们先来了解一下WebView这个组件吧。WebView的用法和普通的ImageView组件的用法是基本相似的,Android提供了许多开发方法,常用的有: Void goBack():后退 Void goForward():前进 Void loadUrl(String url):加载指定URL对应的网页 Boolean zoomIn():放大网页 Boolean zoomOut():缩小网页 当然在Android API文档中还有很多相关的方法,读者可以自己去查阅。那么利用以上的一些方法,我们便可以开发一个简单的浏览器。 相关代码如下: public class WebBrowser extends Activity implements OnClickListener { EditText url; TextView title; WebView webView; Button goButton; Button backButton; Button aboutButton; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_browseryang); setTitle("Made by Liyang"); setControl(); setWebStyle(); } private void setControl() { url=(EditText)findViewById(R.id.url); webView=(WebView)findViewById(R.id.webView); goButton=(Button)findViewById(R.id.goButton); backButton=(Button)findViewById(R.id.backButton); aboutButton=(Button)findViewById(R.id.aboutButton); title=(TextView)findViewById(R.id.title); goButton.setOnClickListener(this); backButton.setOnClickListener(this); aboutButton.setOnClickListener(this); webView.setWebViewClient(new MyWebViewClient()); } @SuppressLint("SetJavaScriptEnabled") private void setWebStyle() { webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setSupportZoom(true); webView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); webView.requestFocus(); webView.loadUrl("http://blog.csdn.net/nuptboyzhb/"); } @Override public void onClick(View v) { // TODO Auto-generated method stub switch(v.getId()){ case R.id.goButton: String url_text; String url_head = "http://"; url_text=url.getText().toString(); if(!url_text.contains("http://")){ url_text=url_head.concat(url_text); } webView.loadUrl(url_text); title.setText("you are browsing web: "+url_text); break; case R.id.backButton: webView.goBack(); break; } } class MyWebViewClient extends WebViewClient{ @Override public boolean shouldOverrideUrlLoading(WebView view,String url_){ view.loadUrl(url_); url.setText(url_); title.setText("you are browsing web: "+url_); return true; } } }
界面程序就不写出来了,就是程序中的一个编辑框(EditView)、一个文本框(TextView)、一个网页框(WebView)、然后最下面是三个按钮。上图便是在Eclipse中界面的样子。 安装到android设备上后,在编辑文本框(最上面的文本框)输入网址,就可以上网了。 |