Przejście do kolejnego activity, gdy 2 użytkowników kliknie button

0

Witam. Od razu mówie, że ucze się androida od 2 miesięcy więc proszę o wyrozumiałość.
W mojej aplikacji, która korzysta z fireBase, chciałem, aby po kliknięciu przez 2 użytkowników buttona, aplikacja przeszła do kolejnego activity. Mam zrobione logowania i rejestrację. W activity o którym mówię jest są obsługiwane przyciski które kolejno przechodzą do odpowiednich activity, jednak w tym jednym, o który mi chodzi nie wiem jak podejść do tematu. Po prostu nie wiem jak sprawdzić czy 2 użytkowników wcisnęło przycisk.

Mam jeszcze jedno pytanie: czy jest możliwość, żeby zresetować activity, ale zapamiętać coś z niego? mianowicie aplikacja którą pisze to gra państwa- miasta. po wpisaniu przez użytkowników danych do pól dostaną oni punkty jak to w tej grze jest. Po upływie regualminowego czasu, lub zakończenia rundy przez użytkownika, punkty mają być sumowane, i activity ma sie restartować ponownie, ponieważ założyłem że gra będzie składała się z kilku rund. Teraz pytanie czy suma punktów z rozgrywki może być zapisana i pokazana na końcu rozgrywki? Mam nadzieje ze wyraziłem się dość jasno. Pozdrawiam i z góry dziękuję za sugestie. poniżej kod do pierwszej częsci pytania:`

    buttonAdd.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

        }
    });

    buttonRank.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent rank = new Intent(v.getContext(), RankingActivity.class);
        }
    });

    buttonLogout.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent logout = new Intent(v.getContext(), MainActivity.class);
            startActivity(logout);
        }
    });

    buttonPlay.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            Intent i = new Intent(v.getContext(), Game.class);
            startActivity(i);
        }
    });
}

}`

oraz klasa z samą grą z której wyniki chciałem zapamiętać

`@Override
public void onTick(long millisUntilFinished) {
firstTimer.setText("Do końca rundy pozostało: " + millisUntilFinished/1000);
}

        @Override
        public void onFinish() {
            firstTimer.setText("Koniec");
        }
    }.start();

    findViewById(R.id.buttonFinnished).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            timerOne.cancel();
            new CountDownTimer(10000, 1000){

                @Override
                public void onTick(long millisUntilFinished) {
                    secountTimer.setText("Do końca rundy pozostało: " + millisUntilFinished/1000);
                }

                @Override
                public void onFinish() {
                    secountTimer.setText("Koniec");
                }
            }.start();
        }
    });


}

}`

0

Co do problemu z zachowaniem wartosci przy restarcie aktywnosci to zachowaj wartosc w Bandle, wiecej na ten temat:
https://developer.android.com/guide/components/activities/activity-lifecycle.html

@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
savedInstanceState.putInt("USER_POINTS", userPoints);
// etc.
}
np: https://stackoverflow.com/questions/151777/saving-android-activity-state-using-save-instance-state

Mozesz rowniez przekazywac wartosci pomiedzy aktywnosciami:

Intent intent = new Intent(getBaseContext(), NewActivity.class);
intent.putExtra("USER_POINTS", userPoints);
startActivity(intent);
np: https://stackoverflow.com/questions/2091465/how-do-i-pass-data-between-activities-in-android-application

Co do problemu z wykrywaniem ze 2 userow kliknelo dalej. O ile dobrze rozumiem to chodzi o to, ze 2 graczy na roznych telefonach gra ze soba i jeden klika dalej i czeka az drugi kliknie dalej zeby przejsc do kolejnej rozgrywki/etapu. Jezeli tak to potrzebujesz tzw. Push Notifications, lub robic sync w jakims interwale czasowym co jest duzo gorszym rozwiazaniem.

0

Super, dziękuję CI bardzo za podpowiedzi :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1