Skocz do zawartości
Poul3R

Jedno menu dla wszystkich activity

    Rekomendowane odpowiedzi

    Poul3R

    Cześć! 

    Jestem początkującym deweloperem na platformę android. Wszystkie aplikacje, które pisałem do tej pory były na tyle proste, że wymagały jedynie jednego lub dwóch activity przez co nie potrzebowałem żadnego skomplikowanego menu. Teraz postanowiłem napisać coś trochę ambitniejszego i natrafiłem na problem. Podejrzewam, iż dla większości z Was może się on wydać wyjątkowo błachy natomiast ja nie mogę znaleźć żadnego racjonalnego rozwiązania :( 

     

    Problem leży w menu aplikacji. Wybierając w środowisku Android Studio domyślne Navigation Activity generuje mi się  ładne menu. I tu pojawia się moje pytanie: jak sprawić aby to menu pokazywało się na 'belce' w każdym innym activity? Gdy zaprogramuję za pomocą 'Intentów'  otwieranie poszczególnych activity z tego menu to po otwartiu nowej karty na belce nie ma już menu i aby je z powrotem ujrzeć 'trzeba się wrócić'. 

    Jedyne rozwiazanie jakie przychodzi mi do głowy to zrobienie każdego activity jako menu dzięki czemu zawsze gdy z menu przeniosę się do innej zakładki na belce będzie się znajdować ikonka do otworzenia listy menu. Domyślam się, że jest to bardzo łopatologiczny i niepoprawny sposób dlatego chciałem Was poprosić o pomoc. Jakaś krótka instrukcja lub materiał z internetu - może być Yt. Ja szukam tego już kilka dni, ale wszystko o menu pokazuje jego najprostrzą wersję gdzie po przekierowaniu na nowe activity menu z poprzedniego już nie ma i trzeba się wracać :/ 

     

    Z góry wielkie dzięki za pomoc ;) 

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Hej,

     

    Wystarczy że każda Twoja aktywność zamiast dziedziczyć po Activity (z pakietu androidowego) będzie dziedziczyć po Twojej klasie MenuActivity. 

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    Poul3R

    @Filip Heryan

    Godzinę temu, Filip Heryan napisał:

    Hej,

     

    Wystarczy że każda Twoja aktywność zamiast dziedziczyć po Activity (z pakietu androidowego) będzie dziedziczyć po Twojej klasie MenuActivity. 

    Zmieniając z 

    public class GroupActivity extends AppCompatActivity 
    

    na

    public class GroupActivity extends AccountMenuActivity
    

    aplikacja wyrzuca błąd i przestaje działać :(. Czy trzeba tu zmienić coś jeszcze aby to nieszczęsne menu zadziałało? 

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Jaki błąd? Mógłbyś też wkleić nagłówek klasy AccountMenuActivity? 

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    Poul3R

    Nagłówek klasy AccountMenuActivity to 

    public class AccountMenuActivity extends AppCompatActivity
    

    Komunikat jaki wyskakuje to jedynie informacja, że aplikacja przestała działać i pod nią przycisk aby uruchomić ją ponownie.

    ---

    Domyślam się, że to raczej nie jest przyczyną błędu, ale czy isteniej możliwość, iż ten błąd jest wynikiem tego że AccountMenuActivity nie jest klasą główną, otwierajacą program? Na pierwszym miejscu mam activity odpowiadajacą za logowanie (na razie nie podpiętą do bazy danych). Po kliknięciu na przycisk przechodzę dopiero do następnej avtivity z menu.

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    pavloasto

    Po pierwsze, gdy aplikacja rzuca błąd to w logach masz dokładnie dlaczego tak się stało, zakładka Android Monitor w Android Studio.

    Po drugie zalecam jednak stworzenie jednej activity, zrobienia dla niej menu i pokazywania poszczególnych ekranów w Fragmentach:

    https://developer.android.com/guide/components/fragments.html

    • Lubię to! 1

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    giaur500

    Dokładnie, powinno to działać na fragmentach. Activity jest jedno razem z menu, a zmienia się tylko zawartość.

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach
    Poul3R

    Wielkie dzięki za pomoc!! :) Właśnie tego szukałem. Temat można zamknąć

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

    Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

    Zarejestruj nowe konto

    Załóż nowe konto. To bardzo proste!

    Zarejestruj się

    Zaloguj się

    Posiadasz już konto? Zaloguj się poniżej.

    Zaloguj się

    • Ostatnio przeglądający   0 użytkowników

      Brak zarejestrowanych użytkowników przeglądających tę stronę.

    x