Przekazanie stringa miedzy activity - zmienia sie ascii?

0

Witam, pisze gre na androida, przekazuje z jednej activity do drugiej wartośc stringa:

Pierwsza aktywność:

public String znakGracza = "X";
Bundle getZnakGracza = new Bundle();
(...)
getZnakGracza.putString("key", znakGracza);
Intent intentPlansza = new Intent(this, PlanszaActivity.class);
intentPlansza.putExtras(getZnakGracza);
startActivity(intentPlansza);

Druga:

public String znakGracza;
public String znakKomputera;
(...)
Bundle bundle = getIntent().getExtras();
znakGracza = bundle.getString("key");
if(znakGracza== "X")
        {
        	znakKomputera ="O";
        }
else if(znakGracza == "O")
        {
        	znakKomputera ="X";
        }
 

niestety żaden z tych if'ów sie nie wykonuje. znakGracza przyjmuje wartośc "X" w drugiej aktywności, tak jak powinien, gdyż taki znak wyświetla mi sie w layoucie po uruchomieniu programu, jednak znak komputera nie przyjmuje żadnej wartości. Wygląda to tak, jakby X zapisany w zmiennej znakGracza miał jakiś inny kod ascci czy cos w tym stylu.. Jeżeli ktos ma jakies pomysły co jest nie tak prosze o pomoc

0

o_O chcesz pisać aplikacje pod Androida bez znajomości absolutnych podstaw javy? Nie tędy droga. Porównanie stringów przez == porównuje referencje, a nie wartość obiektów. Porównuj przez znakGracza.equals("X")

0

Niestety proste błędy to moja specjalność:) Dziekuje za pomoc

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