gpt4 book ai didi

android - 如何使用适用于 Android 的 Microsoft Translation API?

转载 作者:行者123 更新时间:2023-11-29 00:35:09 27 4
gpt4 key购买 nike

好的,我的问题是如何使用适用于 Android 的 Microsoft 翻译 API?我的问题是我正在创建一个 android 应用程序,它将从一个 EditText 获取输入,当按下一个名为 Translate 的按钮时,它将将该文本翻译成另一种语言,然后将翻译后的文本设置为另一个 EditText ...我有写了一些代码,你能告诉我那段代码有什么问题吗,因为它根本不起作用,它不接受输入,因此不产生输出……谢谢……

package kalex.globaltranslate;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

import com.memetix.mst.language.Language;
import com.memetix.mst.translate.Translate;

public class TranslateActivity extends Activity implements OnClickListener {

@Override
public void onCreate(Bundle savedInstanceState) {
Translate.setClientId("MY ID");
Translate.setClientSecret("MY SECRET KEY");
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_translate);
Button Trans = (Button)findViewById(R.id.translate);
Trans.setOnClickListener(this);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_translate, menu);
return true;
}

public void onClick(View v) {
//get the text entered
EditText Input = (EditText)findViewById(R.id.input);
EditText Output = (EditText)findViewById(R.id.output);



String In =Input.getText().toString();
//String Out;
try {
String Out = Translate.execute(In, Language.AUTO_DETECT, Language.FRENCH);

Input.setText(Out);
Output.setText(Out);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}



}
}

最佳答案

首先,您可能想阅读更多关于 Java 编程的一般知识。

您的对象实例应以小写字母命名。例如EditText Input应该是EditText input

我建议你重新组织你的程序,移动

EditText Input = (EditText)findViewById(R.id.input);
EditText Output = (EditText)findViewById(R.id.output);

一开始,在“Trans”实例化之后。然后将这些对象设为全局变量,以便您可以在 OnClick 事件中访问它们。

您的 onClick 方法不检查传递的 View 的 ID,您可能会像这样搬起石头砸自己的脚。为所有具有监听器的 View 创建带有 case 的 switch 语句是很常见的。或者 - 您也可以为所有元素设置专用的 ClickListener(效率较低,但仍然系统化):

private OnClickListener translateClick = new OnClickListener() {

@Override
public void onClick(View v) {
// TODO
}
};

并将其设置为您的翻译按钮 - trans.setOnClickListener(translateClick);

关于android - 如何使用适用于 Android 的 Microsoft Translation API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13081564/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com