Przekazywanie dodatków i obracanie ekranu

Tego rodzaju pytania pojawiają się okresowo. Przepraszam, jeśli zostało to wcześniej opisane, ale jestem nowicjuszem i nie mogłem znaleźć odpowiedniej odpowiedzi. Zajmuje się poprawną implementacją komunikacji między klasami i zajęciami.

Zrobiłem aplikację galerii. Ma 3 główne działania:Main jeden, aby wyszukać nazwy plików za pomocą wzorca; zaThumb jeden, który pokazuje wszystkie obrazy, które pasowały do ​​wzorca jako miniatury w widoku siatki, aPhoto aktywność, która otwiera obraz w pełnym rozmiarze po kliknięciu kciukiemThumbs. Przechodzę doPhoto aktywność za pośrednictwemIntent nazwy plików (tablica) iposition (naint) klikniętego kciuka w widoku siatki.

Ten trzeciPhoto aktywność ma tylko jeden widok na to:TouchImageView, które zaadaptowałem do poprzedniego / następnego przełączania i powiększania w zależności od tego, gdzie krótko klikniesz na obraz (lewy, prawy lub środkowy). Ponadto dodałem longclick listener doPhoto aby wyświetlić informacje EXIF.

Rzecz działa, ale nie jestem zadowolony z wdrożenia ... Niektóre rzeczy nie są w porządku.

Jednym z problemów, które napotykam, jest to, że jeśli kliknę po prawej stronie obrazu, aby zobaczyć następny wPhoto aktywność, przełącza się dobrze (position++), ale podczas obracania urządzenia oryginalny wposition pojawia się.

Dzieje się takPhoto jest niszczony podczas obracania obrazu iz jakiegoś powodu ponownie się uruchamia, bez posłuszeństwasuper.onCreate(savedInstanceState), ładowanie ponownie Dodatki (position zmienił się tylkoPhoto, nie na działalności rodziców).

Próbowałem zstartActivityForResult zamiaststartActivity, ale zawiodło...

Oczywiście mogę zrobić coś wymyślonego, aby uratowaćposition dane, ale powinno być coś „konceptualnego”, którego nie rozumiem, jak działają działania, i chcę to zrobić dobrze.

Czy ktoś może mi wyjaśnić, co robię źle, która jest najlepszą metodą wdrożenia tego, czego chcę i dlaczego?

Wielkie dzięki!!!

questionAnswers(1)

yourAnswerToTheQuestion