2010-07-09 21 views
5

listesinin listesini görüntüleyen ListActivity'den türetilen bir İletişim Etkinliğim var ve öğenin tıklatıldığında, Listesinden alınan yeni bir Aktivite Mesajı Etkinliği Etkinleştiriliyor."Çağırılıyor" Etkinlik örneği, çağrılan Etkinlik'ten nasıl alınır?

Şimdi biliyorum, Bundle'da bazı bilgileri paketleyebilir ve etkinlik oluşturmadan önce iletebilirim, ancak "MessageActivity" öğesinin onCreate yönteminde "ContactActivity" örneğini alabilmem için bir yol var mı?

cevap

4

Hayır, özür dilerim, şu anki etkinliğiniz için startActivity() adlı etkinliğe ulaşmanız için yerleşik bir araç yoktur. Sonuçta, orijinal etkinlik uygulamanızda olmayabilir (ör. Ana ekran).

+0

Neyse ki sorun, Bundle, Bundle aracılığıyla etkinlikler arasında özel nesneler taşıyamıyorum, yalnızca kabul eder, dizgiler vb, ancak iş veri sınıfları değil. –

+5

Doğru değil, veri sınıflarınız varsa "Serializable" veya "Parcelable" komutlarını uygularsanız bunları "Bundle" ile iletebilirsiniz. – CaseyB

5

Evet, bir geçici çözüm yapabilirsiniz. Mesajınızda Aktivite, iletişim sınıfınızın türünün statik bir özniteliğini bildirir, ardından liste tıklandığında ilgili kişiyle bu özniteliği ayarlarsınız ve ardından mesaj etkinliğinizi başlatırsınız. Mesaj etkinliğinizde onCreate yürütüldüğünde, bu özelliği kullanabilirsiniz.

İlgili konular