Wpis z mikrobloga

#java #android

Jest sobie kod java odpalany na android studio.

public class MainActivity extends AppCompatActivity {
public static final String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}


public void sendMessage(View view) {
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.editTextTextPersonName);
String message = editText.getText().toString();
intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);
}
}

Kto mi powie, czemu nie można po ludzku przekazać STRINGa do drugiego activity?
Tylko muszę robić jakieś czary typu:
Zadeklaruj jakiś EXTRAMESSAGE gdzieś globalnie w MAIN ACTIVITY, przypisz do tego jakiś ciąg znaków
A następnie przekaż to badziewie do intentu za poomocą putExtra, ale tylko wraz z tym co na prawdę chcesz przekazać.
Czyli
intent.putExtra(EXTRA_MESSAGE, message);

Czy ja to dobrze rozumiem, czy o co tu chodzi i kto to wymyślił?

#pytanie #naukaprogramowania
  • 24
@nocneszczury: ok, czyli klucz deklaruję w np. main activity czyli w activiti z którego coś przekazuję jeśli dobrze rozumiem.
To jeszcze pytanie, czemu nie mogę zadeklarować klucza bez wartości?
Np.:
public static final String EXTRA_MESSAGE

Czy to dobra praktyka pakować tam losowego z czapy stringa?
via Wykop Mobilny (Android)
  • 0
@zogard:

Czy to dobra praktyka pakować tam losowego z czapy stringa?


jak za pół roku będziesz wiedział jakie ten string dane niesie to proszę bardzo xD
@joolekk: Ta java jest takim badziewiem, że znaleźć informacje to dramat, domyślić się samemu to też lipa bo próżno szukać logiki a tutaj zadaję pytanie o coś co było jako przykład na jakiejś androidowej stronie i dostaję odpowiedź tego typu.
To jak to trzeba zrobic by było dobrze?
@Felnyr: i teraz będziemy pisać o tym, jak to nie znasz odpowiedzi, czy o tym, że parafraza to nie próba interpretacji cytatu? Ja chciałem tylko rozwiać wątpliwość a tu czepiają się do pytania. Dramat
via Wykop Mobilny (Android)
  • 0
@zogard: ale nie musisz robić w ten sposób.

możesz zrobić

intent.putExtra("EXTRAMESSAGE", message);
bez deklarowania EXTRAMESSAGE wcześniej xD