Передать значения в поля из экрана Screen Manager - PullRequest
1 голос
/ 14 февраля 2020

Я занимаюсь разработкой Android приложения. В нем около 40 экранов. У меня есть сканер штрих-кода, он должен быть примерно в 20 из этих экранов. Мне нужно передать значение с экрана сканера штрих-кода на другие экраны с TextInput. В настоящее время я добавил на один экран:

labScreen = "page3"
self.manager.get_screen(labScreen).ids.labBarcode.text = self.barcodeData
self.manager.current = labScreen

Этот код работает, но для каждой страницы потребуется создать новый экран + дизайн сканера штрих-кода, и это плохая практика (концепция), так как мне нужно повторить себя. Я хочу использовать OOP (объектно-ориентированное программирование), например, вызывать / использовать его один раз и получать данные в поля TextInput с разных экранов. Как это сделать? Спасибо.

1 Ответ

0 голосов
/ 14 февраля 2020

OK. Я исправил это с помощью:

MDApp.get_running_app().barcodeValue = self.barcodeData
self.manager.current = MDApp.get_running_app().previousScreen

И установил предыдущий экран как:

MDApp.get_running_app().previousScreen = self.manager.current 

Теперь это работает хорошо. Проблема решена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...