码迷,mamicode.com
首页 > 其他好文 > 详细

简单到不能在简单的浏览器

时间:2020-02-25 23:33:47      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:内容   override   ack   public   otto   art   prot   mis   code   

首先把界面显示出来,为了更加简单这是在相对布局中写的

 1 <EditText
 2         android:layout_width="match_parent"
 3         android:layout_height="wrap_content"
 4         android:id="@+id/et"
 5         android:layout_alignBottom="@+id/btn"
 6         android:layout_alignParentLeft="true"
 7         android:layout_alignParentStart="true"
 8         android:layout_toLeftOf="@+id/btn"
 9         android:layout_toStartOf="@+id/btn" />
10     <Button
11         android:layout_width="wrap_content"
12         android:layout_height="wrap_content"
13         android:id="@+id/btn"
14         android:text="搜索"
15         android:layout_alignParentTop="true"
16         android:layout_alignParentRight="true"
17         android:layout_alignParentEnd="true" />
18     <WebView
19         android:layout_width="match_parent"
20         android:layout_height="match_parent"
21         android:id="@+id/wv"
22         android:layout_below="@+id/et"
23         android:layout_alignParentLeft="true"
24         android:layout_alignParentStart="true">
25     </WebView>

接下来时初始化控件

1 private EditText  et = (EditText) findViewById(R.id.et);
2 private Button btn = (Button) findViewById(R.id.btn);
3 private WebView wv = (WebView) findViewById(R.id.wv);

接下来给按钮设置监听器

 1 btn.setOnClickListener(new View.OnClickListener() {
 2             @Override
 3             public void onClick(View v) {
 4                 //TextUtils静态方法isEmpty可判断输入的字符串是否为空
 5                 if (!TextUtils.isEmpty(et.getText().toString().trim())) {
 6                     //调用page方法来显示网页
 7                     page(et.getText().toString().trim());
 8                 } else {
 9                     Toast.makeText(MainActivity.this, "请输入内容", Toast.LENGTH_SHORT).show();
10                 }
11             }
12         });

接下来时定义page方法

1 protected void page(String info) {
2         //显示页面内容
3         wv.loadUrl(info);
4         //设置本地客户端进行显示
5         wv.setWebViewClient(new WebViewClient());
6     }

page方法会让网页显示在本地客户端而不是调用系统的浏览器,但是仍有缺陷就是按下返回键会直接退出程序,所以眼重写onBackPressed方法

1 public void onBackPressed() {
2         //如果可以返回上一级
3         if (wv.canGoBack()) {
4             wv.goBack();
5         } else {
6             super.onBackPressed();
7         }
8     }

但是此时还不行,因为凡是程序要获得网络的反应时,必须要获得许可,所以在AndroidMainfest.xml文件中加入

1 <uses-permission android:name="android.permission.INTERNET"/>

因为比较简陋所以搜索网址才可以

 

简单到不能在简单的浏览器

标签:内容   override   ack   public   otto   art   prot   mis   code   

原文地址:https://www.cnblogs.com/z-cg/p/12364366.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!