简易词典Android界面代码,Android 有道词典的简单实现方法介绍
第一步:思路解析从界面看一共用了三个控件EditText,Button,WebView。其实是四个,是当我们查询内容为空的时候用来提示的Toast控件。我们在EditText输入查询内容,这里包括中文,英文。然后通过参数的形式,从http://dict.youdao.com/m取出数据把结果存放在WebView里。如下图所示:接下来建立一个布局xml代码如下:1 2 xmlns:tools="ht
第一步:思路解析
从界面看一共用了三个控件EditText,Button,WebView。其实是四个,是当我们查询内容为空的时候用来提示的Toast控件。我们在EditText输入查询内容,这里包括中文,英文。然后通过参数的形式,从http://dict.youdao.com/m取出数据把结果存放在WebView里。如下图所示:
接下来建立一个布局xml代码如下:
1
2 xmlns:tools="http://schemas.android.com/tools"
3 android:layout_width="match_parent"
4 android:layout_height="match_parent"
5 android:background="@drawable/mainbg"
6 android:paddingBottom="@dimen/activity_vertical_margin"
7 android:paddingLeft="@dimen/activity_horizontal_margin"
8 android:paddingRight="@dimen/activity_horizontal_margin"
9 android:paddingTop="@dimen/activity_vertical_margin"
10 tools:context=".MainActivity" >
11
12
14 android:layout_width="wrap_content"
15 android:layout_height="wrap_content"
16 android:layout_alignParentLeft="true"
17 android:layout_alignParentTop="true"
18 android:layout_marginTop="27dp"
19 android:background="@android:drawable/edit_text"
20 android:ems="10"
21 android:singleLine="true"
22 android:textColor="#552006"
23 android:textColorHint="#782f10" >
24
25
26
27
28
30 android:layout_width="wrap_content"
31 android:layout_height="wrap_content"
32 android:layout_alignRight="@+id/tvSearchResult"
33 android:layout_alignTop="@+id/etWord"
34 android:background="@drawable/ibsearchword"
35 android:onClick="search" />
36
37
39 android:layout_width="match_parent"
40 android:layout_height="match_parent"
41 android:layout_alignLeft="@+id/etWord"
42 android:layout_below="@+id/etWord"
43 android:layout_marginTop="22dp"
44 android:background="@drawable/bg_roundcorner"
45 android:textAppearance="?android:attr/textAppearanceMedium"
46 android:textSize="25sp" />
47
48
有些同学也许在用webview控件的时候会出现问题:
第一种方法
1在要Activity中实例化WebView组件:WebView webView = new WebView(this);
2.调用WebView的loadUrl()方法,设置WevView要显示的网页: 互联网用:webView.loadUrl("http://www.google.com"); 本地文件用:webView.loadUrl("file:///android_asset/XX.html"); 本地文件存放在:assets 文件中
3.调用Activity的setContentView( )方法来显示网页视图
4.用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法,如果不做任何处理,点击系统回退剪键,整个浏览器会调用finish()而结束自身,而不是回退到上一页面
5.需要在AndroidManifest.xml文件中添加权限,否则会出现Web page not available错误。
第二种方法:
1、在布局文件中声明WebView
2、在Activity中实例化WebView
3、调用WebView的loadUrl( )方法,设置WevView要显示的网页
4、为了让WebView能够响应超链接功能,调用setWebViewClient( )方法,设置 WebView视图
5、用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法,如果不做任何处理,点击系统回退剪键,整个浏览器会调用finish()而结束自身,而不是回退到上一页面
6、需要在AndroidManifest.xml文件中添加权限,否则出现Web page not available错误。
1 public class YouDao extendsActivity2 {3 //查询按钮申明
4 privateButton myButton01;5 //清空按钮申明
6 privateButton myButton02;7 //输入框申明
8 privateEditText mEditText1;9 //加载数据的WebView申明
10 privateWebView mWebView1;11
12 public voidonCreate(Bundle savedInstanceState)13 {14 super.onCreate(savedInstanceState);15 setContentView(R.layout.main);16 //获得布局的几个控件
17 myButton01 =(Button)findViewById(R.id.myButton01);18 myButton02 =(Button) findViewById(R.id.myButton02);19 mEditText1 =(EditText) findViewById(R.id.myEditText1);20 mWebView1 =(WebView) findViewById(R.id.myWebView1);21 //查询按钮添加事件
22 myButton01.setOnClickListener(newButton.OnClickListener()23 {24 public voidonClick(View arg0)25 {26 String strURI =(mEditText1.getText().toString());27 strURI =strURI.trim();28 //如果查询内容为空提示
29 if (strURI.length() == 0)30 {31 Toast.makeText(YouDao.this, "查询内容不能为空!", Toast.LENGTH_LONG)32 .show();33 }34 //否则则以参数的形式从http://dict.youdao.com/m取得数据,加载到WebView里.
35 else
36 {37 String strURL = "http://dict.youdao.com/m/search?keyfrom=dict.mindex&q="
38 +strURI;39 mWebView1.loadUrl(strURL);40 }41 }42 });43 //http://dict.youdao.com/m/search?keyfrom=dict.mindex&q=happy44 //清空按钮添加事件,将EditText置空
45 myButton02.setOnClickListener(newButton.OnClickListener()46 {47 public voidonClick(View v)48 {49 mEditText1.setText("");50 }51 });52 }53 }
原文:http://www.cnblogs.com/zhiai1314/p/4600699.html
更多推荐
所有评论(0)