软件编程
位置:首页>> 软件编程>> Android编程>> Android网易有道词典案例源码分享

Android网易有道词典案例源码分享

作者:怀中猫  发布时间:2022-09-18 20:53:25 

标签:Android,有道词典

一、相关知识

SearchView控件:

以下是几个简单网址:SearchView简单用法:

Android搜索框(SearchView)的功能和用法详解

Android搜索框SearchView属性和用法详解

关于各种搜素: http://android.xsoftlab.net/guide/topics/search/index.html

SearchBar控件:大家还可以尝试使用SearchBar控件

WebView控件: (巧妙使用该控件可以开发出很多有创意的应用,而且特别简单)

二、实验步骤

在Activity_main XML中


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!-- 顶一个SearchView -->
<SearchView
 android:id="@+id/sv"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content" />
<!-- 建立一個WebView -->
<WebView
android:id="@+id/wv"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:background="@android:color/black"
android:focusable="false"
 />
</LinearLayout>

在MainActivity中


package bzu.edu.cn.happydirectory;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.SearchView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private static SearchView searchView;
private static WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 init();
 searchView.setSubmitButtonEnabled(true);/// 设置该SearchView显示确认搜索按钮
 webView.getSettings().setJavaScriptEnabled(true);//如果页面中使用了JavaScript,不加代码页面不显示
 webView.setWebViewClient(new WebViewClient(){//如果不加此方法将会在浏览器中打开而不是运行的项目中重点内容
  @Override
  public boolean shouldOverrideUrlLoading(WebView view, String url) {
   view.loadUrl(url);
   return true;
  }
 });

searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
  @Override
  public boolean onQueryTextSubmit(String query) {
   String strURI = (query);
   strURI = strURI.trim();
   //如果查询内容为空提示
   if (query.isEmpty())
   {
    Toast.makeText(getApplicationContext(), "查询内容不能为空!", Toast.LENGTH_SHORT)
      .show();
   }
   //否则则以参数的形式从http://dict.youdao.com/m取得数据,加载到WebView里.
   else
   {
    String strURL = "http://dict.youdao.com/m/search?keyfrom=dict.mindex&q="
      + strURI;
    webView.loadUrl(strURL);
   }
   return false;
  }

@Override
  public boolean onQueryTextChange(String newText) {
   return false;
  }
 });
}
public void init(){
 searchView =(SearchView)findViewById(R.id.sv);
 webView =(WebView)findViewById(R.id.wv);
}

}

三、运行结果图

Android网易有道词典案例源码分享

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com