Sobes.tech
Junior — Middle

შეგიძლიათ გადმოცეთ ნებისმიერი მონაცემის ტიპი putExtra მეთოდით Intent-ში?

sobes.tech AI

პასუხი AI-სგან

Intent-ის putExtra მეთოდი საშუალებას აძლევს სხვადასხვა ტიპის მონაცემების გადაცემას, მაგრამ არა ყველა. ის მხარდაჭერილია primitive ტიპები (int, boolean, float და ა.შ.), სტრიქონები, მასივები და ასევე ობიექტები, რომლებიც ახორციელებენ Parcelable ან Serializable ინტერფეისებს. თუ სცადეთ გადმოცემა ობიექტის, რომელიც ამ ინტერფეისებს არ ახორციელებს, აპლიკაცია შესრულების დროს გამოიწვევს შეცდომას. ამიტომ, რთული ობიექტების გადასაცემად საჭიროა ან სერილიზაცია, ან Parcelable-ის გაკეთება.

მაგალითი სტრიქონის და Parcelable ობიექტის გადაცემის:

Intent intent = new Intent(this, NextActivity.class);
intent.putExtra("username", "user123");
intent.putExtra("userData", userParcelableObject); // userParcelableObject ახორციელებს Parcelable
startActivity(intent);