Android

关注公众号 jb51net

关闭
首页 > 软件编程 > Android > Android网易有道词典源码

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

作者:怀中猫

这篇文章主要为大家分享了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);
 }

}

三、运行结果图

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文