如何解决如何在flutter中使用getX保存var的状态?
从图像中检测到的文本保存在“var resultTxt”中,如何保存机器学习模型检测到的所有行的状态并在另一个页面上使用?
文字识别码:
doTextRecog() async {
resultTxt = '';
final FirebaseVisionImage visionImage =
FirebaseVisionImage.fromFile(_selectedFile);
final VisionText visionText =
await textRecognizer.processImage(visionImage);
for (TextBlock block in visionText.blocks) {
for (TextLine line in block.lines) {
resultTxt += line.text + '\n';
}
}
setState(() {
resultTxt;
print(resultTxt);
});
// textRecognizer.close();
}
我已经将 getX 控制器用于我的图像路径,但我不确定如何保存带有多行文本的 var 并在另一个页面上使用它。 控制器代码:
class PollImageController extends GetxController {
RxString imageDisplay = ''.obs;
@override
void onInit() {
super.onInit();
}
void setImage(String image) {
imageDisplay.value = image;
}
@override
void onClose() {
super.onClose();
}
}
解决方法
您可以使用 GetxService
在您的应用中共享数据。
class SharedData extends GetxService {
static SharedData get to => Get.find();
final sharedText = ''.obs;
@override
void onInit() {
super.onInit();
}
@override
void onClose() {
super.onClose();
}
}
doTextRecog() async {
resultTxt = '';
final FirebaseVisionImage visionImage =
FirebaseVisionImage.fromFile(_selectedFile);
final VisionText visionText =
await textRecognizer.processImage(visionImage);
for (TextBlock block in visionText.blocks) {
for (TextLine line in block.lines) {
resultTxt += line.text + '\n';
}
}
// assign value
SharedData.to.sharedText.value = resultTxt;
}
,
您也可以在专门的 <p1 id = "date" />
类中处理所有文本识别功能。
然后您可以调用 GetxController
并从任何地方访问更新的 doTextRecog()
值。
RxString resultTxt
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。