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



Download 21,53 Mb.
Pdf ko'rish
bet99/485
Sana13.07.2022
Hajmi21,53 Mb.
#787165
1   ...   95   96   97   98   99   100   101   102   ...   485
Bog'liq
Android Programmirovanie dlya professionalov 4-e izdanie 2020 Fillips Styuart Marsikano Gardner

Интенты явные и неявные
При создании объекта 
Intent
с объектом 
Context
и 
Class
вы
создаете явный (explicitинтент. Явные интенты используются
для запуска activity в приложениях.
Может показаться странным, что две activity внутри
приложения должны вза имодействовать через компонент
ActivityManager
, находящийся вне приложения. Тем не
менее такая схема позволяет activity одного приложения легко
работать с activity другого приложения.


Когда activity в вашем приложении должна запустить activity
в другом приложении, вы создаете неявный (implicit) интент.
Неявные интенты будут использоваться в главе 15.
Передача данных между activity
Итак, в нашем приложении действуют activity 
MainActivity
и
CheatActivity
, и мы можем задуматься о передаче данных
между ними. На рис. 6.8 показано, какие данные будут
передаваться между двумя activity.
Рис. 6.8. Обмен данными между MainActivity и CheatActivity
MainActivity
передает 
CheatActivity
ответ на текущий
вопрос при запуске 
Cheat 
Activity
.
Когда пользователь нажимает кнопку «Назад», чтобы
вернуться к 
MainActivity
, экземпляр 
CheatActivity
уничтожается. В последний момент он передает 
Main 
Activity
информацию о том, подсмотрел ли пользователь правильный
ответ.
Начнем с передачи данных от 
MainActivity
к
CheatActivity
.
Дополнения интентов


Чтобы сообщить 
CheatActivity
ответ на текущий вопрос, мы
будем 
передавать 
значение
questionBank[currentIndex].answer
.
Значение будет отправлено в виде дополнения (extra) объекта
Intent
, передаваемого 
startActivity(Intent)
.
Дополнения представляют собой произвольные данные,
которые вызывающая activity может передать вместе с
интентом. Их можно рассматривать как аналоги аргументов
конструктора, несмотря на то что вы не можете использовать
произвольный конструктор с подклассом activity (Android
создает экземпляры activity и несет ответственность за их
жизненный цикл). ОС направляет интент activity получателю,
которая обращается к дополнению и извлекает данные (рис.
6.9).
Рис. 6.9. Дополнения интентов: взаимодействие с другими activity
Дополнение представляет собой пару «ключ — значение»
наподобие той, которая использовалась для сохранения
значения 
currentIndex
в 
MainActivity.onSave- 
InstanceState(Bundle)
.
Для включения дополнений в интент используется функция
Intent.putExtra(...)

а 
точнее


putExtra(name:String,value:Boolean)
.
Функция 
Intent.putExtra(...)
существует в нескольких
разновидностях, но всегда получает два аргумента. В первом
аргументе передается ключ 
String
, а во втором — значение
того или иного типа. Функция всегда возвращает сам объект
Intent
, так что при необходимости можно использовать
цепочки из сцепленных вызовов.
Добавьте в 
CheatActivity.kt
ключ для дополнения.

Download 21,53 Mb.

Do'stlaringiz bilan baham:
1   ...   95   96   97   98   99   100   101   102   ...   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