`
xihuan&java
  • 浏览: 161651 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android翻译

阅读更多
通过网上一位仁兄的实例我 最近练习了一个在线翻译的项目下面把主要代码贴下
多谢那位仁兄
源地址和目标地址
package com.srcAndDest;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
/**
 * 源地址和目标地址
 * @author wdw
 *
 */
public class SrcAndDest {

	public List<HashMap<String,Object>> list=null;
	public List<HashMap<String,Object>> getSrcAndDest(){
		list=new ArrayList<HashMap<String,Object>>();
		HashMap<String,Object> 	map = new HashMap<String,Object>();
		map.put("enc", "zh-CN");
		map.put("text", "中文(简体)");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "zh-TW");
		map.put("text", "中文(繁体)");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "en");
		map.put("text", "英语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sq");
		map.put("text", "阿尔巴尼亚人");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "am");
		map.put("text", "阿姆哈拉语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "hy");
		map.put("text", "亚美尼亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "az");
		map.put("text", "阿塞拜疆");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "be");
		map.put("text", "白俄罗斯");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "bn");
		map.put("text", "孟加拉");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "bh");
		map.put("text", "比哈里");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "bg");
		map.put("text", "保加利亚语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "my");
		map.put("text", "缅甸语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ca");
		map.put("text", "加泰罗尼亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "chr");
		map.put("text", "切诺基");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "hr");
		map.put("text", "克罗地亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "cs");
		map.put("text", "捷克");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "da");
		map.put("text", "丹麦");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "nl");
		map.put("text", "荷兰");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "et");
		map.put("text", "爱沙尼亚语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "tl");
		map.put("text", "菲律宾");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "fi");
		map.put("text", "芬兰");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "fr");
		map.put("text", "法语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "gl");
		map.put("text", "加利西亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ka");
		map.put("text", "格鲁吉亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "de");
		map.put("text", "德语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "el");
		map.put("text", "希腊语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "iw");
		map.put("text", "希伯来");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "hi");
		map.put("text", "印地文");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "hu");
		map.put("text", "匈牙利");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "is");
		map.put("text", "冰岛");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "id");
		map.put("text", "印度尼西亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "iu");
		map.put("text", "因纽特语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "it");
		map.put("text", "意大利");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ja");
		map.put("text", "日文");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "kn");
		map.put("text", "卡纳达");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "km");
		map.put("text", "高棉");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ko");
		map.put("text", "韩国");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ku");
		map.put("text", "库尔德");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ky");
		map.put("text", "吉尔吉斯");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "lo");
		map.put("text", "老挝语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "lv");
		map.put("text", "拉脱维亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "lt");
		map.put("text", "立陶宛");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "mk");
		map.put("text", "马其顿");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ms");
		map.put("text", "马来");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ml");
		map.put("text", "马来亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "mt");
		map.put("text", "马耳他语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "mr");
		map.put("text", "马拉");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "mn");
		map.put("text", "蒙古族");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ne");
		map.put("text", "尼泊尔");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "no");
		map.put("text", "挪威的");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "or");
		map.put("text", "奥里雅");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ps");
		map.put("text", "普什图语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "fa");
		map.put("text", "波斯湾");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "pl");
		map.put("text", "波兰语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "pt-PT");
		map.put("text", "葡");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "pa");
		map.put("text", "旁遮普语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ro");
		map.put("text", "罗马尼亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ru");
		map.put("text", "俄罗斯");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sa");
		map.put("text", "梵语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sr");
		map.put("text", "塞尔维亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sd");
		map.put("text", "信德语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "si");
		map.put("text", "僧伽罗人");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sk");
		map.put("text", "斯洛伐克");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sl");
		map.put("text", "斯洛文尼亚");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "es");
		map.put("text", "西班牙");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sw");
		map.put("text", "斯瓦希里");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "sv");
		map.put("text", "瑞典语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "tg");
		map.put("text", "塔吉克");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ta");
		map.put("text", "泰米尔人");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "tl");
		map.put("text", "他加禄语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "te");
		map.put("text", "泰卢固");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "th");
		map.put("text", "泰国");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "bo");
		map.put("text", "西藏");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "tr");
		map.put("text", "土耳其语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "uk");
		map.put("text", "乌克兰");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ur");
		map.put("text", "乌尔都语");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "uz");
		map.put("text", "乌孜别克");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "ug");
		map.put("text", "维吾尔");
		list.add(map);
		map = new HashMap<String,Object>();
		map.put("enc", "vi");
		map.put("text", "越南人");
		list.add(map);
		return list;
	}
}
activity的主要代码

public void onClick(View v)
    {
    	if (v.getId()==interCha.getId()) 
    	{
			//自定义dialog
    		LayoutInflater flater=this.getLayoutInflater();
    		View view = flater.inflate(R.layout.alertview, null);
    		AlertDialog.Builder builder = new AlertDialog.Builder(this);
    		builder.setView(view);
    		builder.setTitle("languageCode设置");
    		spsrc=(Spinner)view.findViewById(R.id.spsrc);
			spdest=(Spinner)view.findViewById(R.id.spdest);
			ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
					android.R.layout.simple_spinner_item,altext);
			adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
			spsrc.setAdapter(adapter);
			spsrc.setSelection(srcIndex);
			adapter = new ArrayAdapter<String>(this,
					android.R.layout.simple_spinner_item,altext);
			adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
			spdest.setAdapter(adapter);
			spdest.setSelection(destIndex);
			builder.setPositiveButton("确定", new DialogInterface.OnClickListener(){

				public void onClick(DialogInterface dialog, int which) {
					srcIndex = spsrc.getSelectedItemPosition();
					destIndex = spdest.getSelectedItemPosition();
					//先保存后获取设置
					putSetting(srcIndex,destIndex);
					getSetting();
				}
				
			});
			builder.setNegativeButton("取消", new DialogInterface.OnClickListener(){

				public void onClick(DialogInterface dialog, int which) {
					// TODO Auto-generated method stub
					
				}
				
			});
			builder.create().show();
		}
    	else if (v.getId()==interButton.getId())
    	{
			tileView.setVisibility(TextView.VISIBLE);
			myWView.setVisibility(WebView.VISIBLE);
			myHandler.post(new Runnable(){

				public void run() {
					String textString = myEText.getText().toString();
					if (!textString.equals(""))
					{
						myWView.loadUrl("javascript:translate('"+ 
			        			  textString + "','"+src+"','"+dest+"')");
					}
					
				}
				
			});
		}
    	else if (v.getId()==readBt.getId())
    	{
			mSpeech.speak(readEt.getText().toString(),
					TextToSpeech.QUEUE_FLUSH, null);
		}
    	else {
			//交换目标地址和源地址
    		this.putSetting(destIndex, srcIndex);
			this.getSetting();
		}
		
	}
    /*
	 * 初始化上一次src和dest
	 */
	private void getSetting(){
		SharedPreferences settings=getPreferences(MODE_PRIVATE);
		srcIndex=settings.getInt("srcIndex", 0);
		destIndex=settings.getInt("destIndex", 0);
		//得到src和dest语言LanguageCode(例如:简体中文:zh-cn,繁体中文:zh-tw) 
		src=alenc.get(srcIndex);//alenc一个ArrayList<String>对象,保存enc
		dest=alenc.get(destIndex);
		stext=altext.get(srcIndex);//altext一个ArrayList<String>对象,保存text
		dtext=altext.get(destIndex);
		String text=stext+">>"+dtext;
		if(srcIndex!=destIndex){
			interCha.setText(text);
		}else{
			if(srcIndex==0){
				interCha.setText("翻译设置");
			}else{
				interCha.setText(text);
			}
		}
	}
	private void putSetting(int srcindex,int destindex)
	{
		SharedPreferences setting = this.getPreferences(MODE_PRIVATE);
		Editor editor = setting.edit();
		editor.putInt("srcIndex", srcindex);
		editor.putInt("destIndex", destindex);
		editor.commit();
		
	}
public void onDestroy(){
		this.putSetting(srcIndex, destIndex);
		super.onDestroy();
	}
	//检查网络是否连接
	public boolean checkIntent(){
		ConnectivityManager mannager=(ConnectivityManager)
	      this.getSystemService(CONNECTIVITY_SERVICE);
		NetworkInfo info=mannager.getActiveNetworkInfo();
		if(info==null || !info.isConnected()){
			return false;
		}
		if(info.isRoaming()){
			return true;
		}
		return true;
	}

JavaScript代码
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<script type="text/javascript" src="http://www.google.com/jsapi"></script> 
<script type="text/javascript">
    google.load("language", "1");
    function g_translate(strInput,src,dest,out){
        google.language.translate(strInput, src, dest, function(result){
          if (!result.error){
            document.getElementById(out).innerHTML=result.translation;
			}else
            document.getElementById(out).innerHTML="google_translate Error!";
        });
      } 
</script>
  

<body style="background-color:#fff">
<div id="show" style="font-size:16px; color:#666;"></div>
<script language="javascript">
function translate(strTranslate,src,dest)
{
    document.getElementById("show").innerHTML="翻译中.....";
    g_translate(strTranslate,src,dest,"show");
}
</script>
</body>
</html>
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Android翻译软件源代码

    首先,Android翻译软件的核心是实现文本的翻译功能。这通常涉及到集成第三方翻译API,如Google Translate API、Microsoft Azure Cognitive Services或者DeepL API。这些API提供了丰富的语言对,可以进行多种语言之间...

    android 翻译app,直接可以在android studio上运行

    【标题】"Android翻译App,直接在Android Studio上运行"所涉及的知识点主要集中在Android应用开发上,特别是针对Android Studio的使用以及实现翻译功能。Android Studio是Google为Android开发者提供的集成开发环境...

    Android翻译Demo

    这个"Android翻译Demo"项目展示了如何在Android应用中集成翻译服务,特别是使用有道翻译API来完成这一任务。有道翻译是网易公司提供的一款强大的在线翻译工具,它支持多种语言之间的互译,为开发者提供了方便的API...

    LibreTranslate API 配套Android翻译APP源码

    因此,我基于这套API,使用Retrofit库和Kotlin语言编写了一个简单的Android翻译软件,只需要在软件设置中配置好局域网内本地部署的LibreTranslate API服务的IP地址(或域名)以及端口号即可。目前添加了六种语言:...

    IOS+Android翻译组件.rar

    标题中的“IOS+Android翻译组件.rar”表明这是一个与iOS和Android平台相关的软件开发资源,可能包含用于跨平台应用开发的翻译工具或库。这个压缩包可能是为了帮助开发者实现在iOS和Android应用程序中集成多语言支持...

    基于Android翻译_玩转英语APP设计与实现.docx

    基于Android翻译_玩转英语APP设计与实现.docx

    Android中文翻译组_Android中文API合集(4).zip_android_android 翻译_android开发

    《Android中文API合集(4)》是由Android中文翻译组精心编译的一份重要资源,旨在为中国的Android开发者提供方便易懂的API参考文档。这个压缩包中的核心文件是"Android中文翻译组——Android中文API合集(4).chm",...

    Android中文翻译组Android中文

    【Android中文翻译组Android中文】这个资源集合是针对Android开发者精心整理的一份宝贵资料,包含了丰富的教程、示例代码和文档,旨在帮助学习者深入理解并掌握Android开发技术。资源中的"Android中文翻译组"可能是...

    Android_Bluetooth_API_翻译.rar_android_android 翻译_bluetooth

    《Android Bluetooth API 翻译详解》 在Android操作系统中,蓝牙(Bluetooth)技术是一种重要的无线通信方式,广泛应用于设备间的数据交换、音频传输、物联网设备的连接等场景。Android Bluetooth API提供了丰富的...

    基于android的在线翻译app

    在本项目"基于Android的在线翻译App"中,开发者利用了Android平台的开发技术,结合百度翻译API,创建了一个能够实现实时翻译功能的应用程序。这个应用不仅提供了基础的翻译服务,还允许用户将重要的单词或短语收藏,...

    Android中文翻译组——Android中文合集(6)

    【Android中文翻译组——Android中文合集(6)】 这个合集主要涵盖了Android开发中的多个重要知识点,由Android中文翻译组精心编译和翻译,旨在为国内开发者提供更易理解和使用的中文资源。以下是对其中一些关键...

    Android代码-Android官方博客翻译(定期更新)

    Android-Developer-Blog翻译 停更,后续移步-&gt; Google中文博客官方版本 定期翻译Android官方博客,希望大家都Star一下,让更多的人看到,也能给翻译者更多的动力,谢谢大家 阅读 Gitbook版 链接 官方博客链接...

    TellMeAboutIt:Android 翻译消息应用程序

    Android 翻译消息应用程序 读我 此应用程序旨在为革命性的消息翻译应用程序创建中等保真原型。 它的创建是为了展示使用名为 Parse 的后端创建用户名和密码的简便性。 它还能够将消息翻译成七种不同的语言,英语、...

    Android中文翻译组——Android中文API合集(7).chm

    Android中文翻译组是一个非盈利性质的开源组织,至今已超过300人报名参与,关于翻译组的介绍,请看这里。欢迎更多朋友加入,发邮件到over140@gmail.com申请加入。 Android中文翻译组WIKI网站:...

    Android中文翻译组—Android中文合集(7)

    《Android中文翻译组—Android中文合集(7)》是一个为中文用户提供的Android开发资源集合,更新至2012年1月22日,包含了当时最全面、最新的Android API中文版信息。这个合集主要以CHM(Microsoft Compiled ...

    转:Android中文翻译组——Android中文合集(5)

    《Android中文翻译组——Android中文合集(5)》是一个包含丰富Android开发资源的压缩包,其中的重点内容可能包括源码解析和工具介绍两大主题。这个合集是Android中文翻译组辛勤工作的成果,旨在帮助中国开发者更好...

    Android中文翻译组——Android开发者指南(2).chm

    Android中文翻译组是一个非盈利性质的开源组织,至今已超过300人报名参与,关于翻译组的介绍,请看这里。欢迎更多朋友加入,发邮件到over140@gmail.com申请加入。 Android中文翻译组WIKI网站:...

    有关android技术英文文献翻译

    Android 应用程序基础知识 Android 应用程序是使用 Java 编程语言编写的。Android SDK 工具将代码编译成 Android 包(archive file with an .apk suffix),其中包括数据和资源文件。所有在单个 .apk 文件中的代码...

Global site tag (gtag.js) - Google Analytics