Sobes.tech
Junior — Middle

Kas on võimalik edastada mis tahes andmetüüpi, kasutades meetodit putExtra Intentis?

sobes.tech AI

Vastus AI-lt

Intent'i putExtra meetod võimaldab edastada erinevat tüüpi andmeid, kuid mitte kõiki. See toetab primitiivseid tüüpe (int, boolean, float jne), stringe, massiive ning ka objekte, mis implementeerivad Parcelable või Serializable liideseid. Kui proovite edastada objekti, mis neid liideseid ei implementeeri, viskab rakendus jooksvalt vea. Seetõttu on keerukate objektide edastamiseks vaja neid kas serialiseerida või teha Parcelable.

Näide stringi ja Parcelable objekti edastamisest:

Intent intent = new Intent(this, NextActivity.class);
intent.putExtra("username", "user123");
intent.putExtra("userData", userParcelableObject); // userParcelableObject implementeerib Parcelable
startActivity(intent);