Cześć, piszę aplikację do skanowania barcodow. Zaimplementowałem sobie MVP takie jak w googlesamples. Używam jakiejś biblioteki z githuba, która udostępnia customowy widok służący do skanowania tych kodów. Jako, że jest to widok wsadziłem jego instancję, do mojego View( implementowane przez Fragment) i w onCreateView() tworzę tą instancję. Dodatkowo w tym Fragmencie jest jeszcze implementowany callback przechwytujący zeskanowany kod - w metodzie tej wywoluje odpowiednia metode z presentera i do tego miejsca wszystko swietnie gra.
Problem zaczyna się kiedy chcę kontrolować ten skaner. Udostępnia on metody do włączania/wyłączania flasha oraz autofocusa. Miejscem, w którym mogę to włączyć jest toolbar. Obsługa toolbara jest w Aktywności. Zrobiłem sobię klasę modelu ScannerState z tymi dwoma parametrami boolowskimi i utworzyłem jej instancję w aktywności i przekazałem do presentera. Presenter udostępnia metodę getScannerState() dzięki czemu widok może zmieniać stan skanera np podczas wracania z pauzy albo podobym przypadku.
Nie podoba mi się jednak to rozwiązanie ze widok skanera jest w widoku a jego stan w presenterze. Myślałem żeby napisać jakiś wraper w postaci kontrolera i wpakować tam i ten widok skanera i jego stan ale no nie wiem .. Macie jakieś sensowniejsze pomysly ?
Jakieś pomysły ?