Android. Программирование для профессионалов. 4-е издание



Download 21,53 Mb.
Pdf ko'rish
bet104/485
Sana13.07.2022
Hajmi21,53 Mb.
#787165
1   ...   100   101   102   103   104   105   106   107   ...   485
Bog'liq
Android Programmirovanie dlya professionalov 4-e izdanie 2020 Fillips Styuart Marsikano Gardner

Возвращение интента
В нашей реализации дочерняя activity должна вернуть
MainActivity
некоторые данные. Соответственно, мы
создадим объект 
Intent
, поместим в него дополнение, а затем
вызовем 
Activity.setResult(int,Intent)
для передачи
этих данных 
MainActivity
.
Добавьте в 
CheatActivity
константу для ключа
дополнения и приватную функцию, которая выполняет
необходимую работу. Затем включите вызов этой функции в
слушателя кнопки 
SHOWANSWER
.
Листинг 6.14. Назначение результата (CheatActivity.kt)
const 
val 
EXTRA_ANSWER_SHOWN 
=
"com.bignerdranch.android.geoquiz.answer_shown"
private const val EXTRA_ANSWER_IS_TRUE =
"com.bignerdranch.android.geoquiz.answe
r_is_true"


class CheatActivity : AppCompatActivity() {
...
override fun onCreate(savedInstanceState:
Bundle?) {
...
showAnswerButton.setOnClickListener {
...
answerTextView.setText(answerText)
setAnswerShownResult(true)
}
}
private 
fun
setAnswerShownResult(isAnswerShown: Boolean) {
val data = Intent().apply {
putExtra(EXTRA_ANSWER_SHOWN,
isAnswerShown)
}
setResult(Activity.RESULT_
OK
, data)
}
...
}
Когда пользователь нажимает кнопку 
SHOWANSWER
,
CheatActivity
упаковывает код результата и интент в вызове
setResult(int,Intent)
.
Затем, когда пользователь нажимает кнопку «Назад» для
возвращения к 
Main 
Activity

ActivityManager
вызывает
следующую функцию родительской activity:
onActivityResult(requestCode: Int, resultCode:
Int, data: Intent)


В параметрах передается исходный код запроса от
MainActivity
, код результата и интент, переданный
setResult(int,Intent)
.
Последовательность взаимодействий изображена на рис.
6.10.
Рис. 6.10. Диаграмма последовательности для GeoQuiz
Остается 
последний 
шаг: 
переопределение
onActivityResult(int,int,Intent)
в 
MainActivity
для
обработки результата.

Download 21,53 Mb.

Do'stlaringiz bilan baham:
1   ...   100   101   102   103   104   105   106   107   ...   485




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish