編輯:關於Android編程
轉載請注明出處,喜歡我的可以關注我!
上一節我們介紹了GSON和Volley,用GSON對返回的數據進行了初步解析,這一節我們更進一步,討論一下如何實現英文詞典。首先把JSON數據的樣式再看一下:

下面創建bean,這些都和上一節一樣:
第一個bean:
[java] view plaincopy第二個bean:
[java] view plaincopy
第3個bean:
第4個bean:
[java] view plaincopy
第5個:
所需要的jar包也和上一節一樣,可以參考上一節,我們主要討論一下MainActivity.java程序:
package org.lxh.demo;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import com.google.gson.Gson;
public class MainActivity extends Activity {
private Button tojson;
RequestQueue mQueue;
StringRequest stringRequest;
Gson gson;
String str;
private TextView textView;
private EditText editText;
String string = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textView = (TextView) findViewById(R.id.text);
editText = (EditText) findViewById(R.id.edit);
tojson = (Button) findViewById(R.id.btn);
gson = new Gson();
mQueue = Volley.newRequestQueue(MainActivity.this);
tojson.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
string = editText.getText().toString();
String requestUrl = getRequestUrl(string);
stringRequest = new StringRequest(requestUrl,
new Response.Listener() {
public void onResponse(String response) {
Log.d(TAG, response);
System.out.println(response= + response);
Status1 status = gson.fromJson(response,
Status1.class);
StringBuffer buffer = new StringBuffer();// 保存所用字符串
RetData2 retData2 = status.getRetData();// 第二個對象的獲取
System.out.println(from= + retData2.getFrom());
DictResult3 dictResult3;
dictResult3 = retData2.getDictResult();// 第三個對象的獲取
buffer.append(單詞:
+ dictResult3.getWord_name() +
);
System.out.println(word_name=
+ dictResult3.getWord_name());
List symbols4s = dictResult3
.getSymbols();// 第四個是對象數組哦,獲取對象數組
buffer.append(音標
+ symbols4s.get(0).getPh_en() +
);// symbols4s.get(0)用於獲取第一個對象
List parts = symbols4s.get(0).getParts();// 同理,最後一個也是對象數組
for (int i = 0; i < parts.size(); i++) {
buffer.append(part:
+ parts.get(i).getParts()// parts.get(i)獲取對象List中的各個對象
+
);
buffer.append(詞義:);
for (int j = 0; j < parts.get(i).getMeans().length; j++) {
String[] aStrings = parts.get(i)
.getMeans();
buffer.append(aStrings[j]);
}
buffer.append(
);
}
textView.setText(buffer);
}
}, new Response.ErrorListener() {
public void onErrorResponse(VolleyError error) {
Log.e(TAG, error.getMessage(), error);
}
});
mQueue.add(stringRequest);
}
});
}
private String getRequestUrl(String word) {
String url = null;
if (word != null) {
url = http://apistore.baidu.com/microservice/dictionary?query=
+ word + &from=en&to=zh;
}
return url;
}
}
運行實例:


以上實例只是展示如何使用,有很多Bug有待完善,大家可以自行改善,也可以發揮你的能力,做成一部真正的字典app。
Android實現微信分享及注意事項
一、獲取幫助文檔並下載相關資料首先打開微信開放平台:https://open.weixin.qq.com/ 如果沒有注冊,請先注冊並上傳開發者資料等待審核。資源中心---
Android系統截屏功能提取
Android在4.0版本之後同時按電源鍵和音量鍵可以截取當前屏幕,截圖後會有一個過渡動畫效果,這裡提取了將效果這部分提取出來,可以用於應用截圖分享功能。 截圖功能在源碼
輕松實現Android指南針功能
本文實例為大家講解如何輕松實現Android指南針功能,分享給大家供大家參考。具體如下:(1)布局文件如下:<?xml version=1.0 encodi
Android APK反編譯詳解
在此鄭重聲明,貼出來的目的不是為了去破解人家的軟件,完全是一種學習的態度,不過好像通過這種方式也可以去漢化一些外國軟件。一、反編譯Apk得到Java源代碼首
Android自定義LinearLayout實現左右側滑菜單,完美兼容ListView、ScrollView、ViewPager等滑動控件
國際慣例,先來效果圖 在閱讀本文章之前,請確定熟悉【Scrol