Saya memiliki Location
kegiatan yang dapat dipanggil dari banyak kegiatan, seperti Sign up
dan Order
. Dalam Location
aktivitas tersebut, pengguna memasukkan lokasinya, sehingga aktivitas tersebut Location
akan mengembalikan lokasi baru ini ke aktivitas yang memanggilnya.
Jadi ketika Sign up
aktivitas memanggil Location
aktivitas, ia harus mengembalikan data ke Sign up
aktivitas. Lain waktu Order
kegiatan akan melakukan hal yang sama.
Catatan
Saya tahu Anda akan memberi tahu saya bahwa saya harus memposting kode, tetapi saya tidak meminta Anda untuk memberi saya kode; Saya hanya ingin beberapa kiat, tautan, atau utas bagus.
android
android-activity
onactivityresult
pengguna pengguna
sumber
sumber
Jawaban:
Untuk memulai suatu kegiatan yang harus mengembalikan hasil ke aktivitas panggilan, Anda harus melakukan sesuatu seperti di bawah ini. Anda harus melewati kode permintaan seperti yang ditunjukkan di bawah ini untuk mengidentifikasi bahwa Anda mendapatkan hasil dari aktivitas yang Anda mulai.
Dalam aktivitas, Anda dapat menggunakan
setData()
untuk mengembalikan hasil.Jadi sekali lagi dalam aktivitas pertama Anda menulis kode di bawah ini di onActivityResult ()
Sunting berdasarkan komentar Anda: Jika Anda ingin mengembalikan tiga string, ikuti ini dengan memanfaatkan pasangan kunci / nilai dengan maksud alih-alih menggunakan Uri.
Dapatkan mereka di onActivityResult seperti di bawah ini:
sumber
requestcode
bisa saya masukkan bilangan bulat?new Intent(this, OtherActivity.class);
Saya dapat menggunakan kode ini dalam suatu Aktivitas.Jika Anda ingin menyelesaikan dan hanya menambahkan
resultCode
(tanpa data), Anda dapat meneleponsetResult(int resultCode)
sebelumnyafinish()
.Sebagai contoh:
Kemudian dalam aktivitas menelepon Anda, periksa
resultCode
, untuk melihat apakah kami baik-baik saja.Jangan lupa untuk menelepon aktivitas tersebut
startActivityForResult(intent, someCustomRequestCode)
.sumber
Activity.RESULT_OK
sebenarnya-1
, dalam kasus yang membingungkan seseorang. Saya hanya akan menyarankan menggunakanActivity
konstanta