在下面的代碼中,我將程序的結果寫入文本欄位。代碼作為任務的一部分執行。
我想要“傳輸”文本(字串“測驗”)到 onSuccess() 方法,以便我可以在 onSuccess() 中使用它。我不想通過靜態/全域變數來做到這一點。
我的問題是:我可以將資料傳輸到 onSucess() 方法嗎?
private void recognizeTextFromImage(InputImage image) {
String test = “Test“
TextRecognizer recognizer = TextRecognition.getClient(TextRecognizerOptions.DEFAULT_OPTIONS);
Task<Text> task = recognizer.process(image);
// recognizer.process(image)
task
.addOnSuccessListener(
new OnSuccessListener<Text>() {
@Override
public void onSuccess(Text texts) {
recognizedText = processTextRecognitionResult(texts);
editText_Test.setText(test recognizedText);
Log.d(TAG,"Successful: " recognizedText);
}
})
.addOnFailureListener(
new OnFailureListener() {
}
});
recognizer.close();
}
uj5u.com熱心網友回復:
變數“測驗”不是某種“全域”。根據定義,它是一個區域變數,因此,每次呼叫者啟動該方法時,都會實體化一個新變數。除非 TextRecognizer 以某種非常奇怪的方式實作,否則我看不到僅在 onSuccess 中使用測驗變數的并發問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/337173.html
