查看: 1970|回复: 0

在android中开发一个小型的浏览器

[复制链接]
  • TA的每日心情
    擦汗
    2014-4-11 09:59
  • 签到天数: 12 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2014-2-10 09:33:12 | 显示全部楼层 |阅读模式
    分享到:
    本文说的简单的浏览器可不能进行在线看视频、听歌等功能。
    我们先来了解一下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;
            }
        }
    }

    1.jpg
    界面程序就不写出来了,就是程序中的一个编辑框(EditView)、一个文本框(TextView)、一个网页框(WebView)、然后最下面是三个按钮。上图便是在Eclipse中界面的样子。
    安装到android设备上后,在编辑文本框(最上面的文本框)输入网址,就可以上网了。
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-25 18:20 , Processed in 0.112368 second(s), 15 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.