【发布时间】:2021-06-04 05:04:04
【问题描述】:
我正在使用设备翻译 API 上的机器学习套件来翻译文本。虽然翻译工作正常,但我无法在我的文本视图中显示翻译后的文本。我尝试使用 setText 方法,但文本中没有显示任何内容视图。一切都显示在 logcat 中。
我在 Android Studio 工作
编辑: 这显示正在下载的模型
TranslatorOptions options =
new TranslatorOptions.Builder()
.setSourceLanguage(TranslateLanguage.ENGLISH)
.setTargetLanguage(TranslateLanguage.BENGALI)
.build();
final Translator englishBengaliTranslator =
Translation.getClient(options);
//DOWNLOAD THE MODEL
DownloadConditions conditions = new DownloadConditions.Builder()
.requireWifi()
.build();
englishBengaliTranslator.downloadModelIfNeeded(conditions)
.addOnSuccessListener(
new OnSuccessListener() {
@Override
public void onSuccess(Object o) {
}
//@Override
public void onSuccess(Void v) {
// Model downloaded successfully. Okay to start translating.
// (Set a flag, unhide the translation UI, etc.)
Toast.makeText(getApplicationContext(), "Model Downloaded.Translation will start ", Toast.LENGTH_SHORT).show();
}
})
.addOnFailureListener(
new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
// Model couldn’t be downloaded or other internal error.
// ...
Toast.makeText(getApplicationContext(), "Model could not be Downloaded. ", Toast.LENGTH_SHORT).show();
}
});
在这段代码的 sn-p 中,我调用了 translate 函数(因为模型现在已下载)
englishBengaliTranslator.translate(stringResult)
.addOnSuccessListener(
new OnSuccessListener() {
@Override
public void onSuccess(Object o) {
}
//@Override
public void onSuccess(@NonNull String translatedText1) {
textViewTranslatedText.setText(translatedText1);
}
})
.addOnFailureListener(
new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
// Error.
// ...
Toast.makeText(getApplicationContext(), "Text could not be translated. ", Toast.LENGTH_LONG).show();
}
});
我使用了 setText 函数,但翻译后的文本仍然显示在 logcat 而不是 textview 中(翻译工作完全正常)。如何在我的 textView 而不是 logcat 中显示它?任何线索都会有帮助!
这是显示翻译文本的logcat图像:enter image description here
【问题讨论】:
-
如果你能分享一些你的代码会很有帮助
-
是的,对不起,我希望现在更清楚了
-
您发布的代码中没有找到 Log.d()。
-
是的,我知道我没有写日志语句,为什么会显示在那里??
-
TextView 也可能有问题。您能否粘贴 XML 代码,并且在设置之前确保
translatedText1实际上不是空的。
标签: android api textview translation