Android课程设计——中英翻译器
时间:2026-01-17
时间:2026-01-17
Android课程设计——中英翻译器
Android课程设计——中英翻译器
之前老师讲过调用google 提供的api程序接口可以做天气预报和地图。所以我效仿课件和网上资料做了一个google的在线翻译器。主要是借助google的翻译api和webview来实现的。大部分是参考google code。尤其是JS的部分主要参考:http://www.77cn.com.cn/intl/zh-CN/apis/language/translate/v1/getting_started.html
Android课程设计——中英翻译器
只有一个java文件
Translation.java
package deep.android;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.AdapterView.OnItemSelectedListener;
public class Translation extends Activity {
private TextView tips; private EditText editText; private WebView webView; private String[] url = {"file:///android_asset/cn2en.html", "file:///android_asset/en2cn.html"}; //在asset文件夹下的两个html文件,一个是简体中文->英语,一个是英语->简体中文 private String[] chooseStr={"简体中文->英语","英语->简体中文"}; //设定翻译模式,这里只提供中译英,英译中 private Handler tHandler = new Handler();//利用Handler来实现线程通信
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(http://www.77cn.com.cnyout.main);
webView=(WebView)findViewById(R.id.toutput);
final Button submit=(Button)findViewById(R.id.submit);
editText=(EditText)findViewById(R.id.tinput);
tips=(TextView)findViewById(R.id.tips);
final Spinner l_select=(Spinner)findViewById(R.id.l_select);
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,
http://www.77cn.com.cnyout.simple_spinner_item,chooseStr);
Android课程设计——中英翻译器
adapter.setDropDownViewResource(http://www.77cn.com.cnyout.simple_spinner_dropdown_item); l_select.setPrompt("请选择翻译的方式");
l_select.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) { //选择翻译模式 } if(((TextView)arg1).getText()==chooseStr[0]) webView.loadUrl(url[0]); if(((TextView)arg1).getText()==chooseStr[1]) webView.loadUrl(url[1]); @Override public void onNothingSelected(AdapterView<?> arg0) { webView.loadUrl(url[0]);//这是开启软件后默认的翻译模式
}
});
l_select.setAdapter(adapter);
WebSettings webSettings = webView.getSettings(); //get set方法
webSettings.setJavaScriptEnabled(true);
webSettings.setSaveFormData(false);
webSettings.setSavePassword(false);
webSettings.setSupportZoom(false);
submit.setOnClickListener(new OnClickListener() {
}); @Override public void onClick(View v) { tips.setVisibility(TextView.VISIBLE);//提示 webView.setVisibility(WebView.VISIBLE);//翻译结果 tHandler.post(new Runnable(){ public void run(){ if (editText.getText().toString() != ""){ } } }); } webView.loadUrl("javascript:translate('"+ editText.getText().toString() + "')");
}
}
…… 此处隐藏:831字,全部文档内容请下载后查看。喜欢就下载吧 ……