Нативная разработка мобильных приложений



Download 3,69 Mb.
Pdf ko'rish
bet118/228
Sana21.07.2022
Hajmi3,69 Mb.
#834838
1   ...   114   115   116   117   118   119   120   121   ...   228
Bog'liq
Нативная разработка мобильных приложений

Принять
и 
Отменить
может показаться пользова
-


iOS 

177
телям более знакомой, и они с большей вероятностью подпишутся на вашу рас
-
сылку (или дадут вашему приложению хороший рейтинг), если вы используете их. 
Однако если эти инструменты не соответствуют вашим требованиям, есть возмож
-
ность создать (или изменить) свои компоненты пользовательского интерфейса, 
лучше подходящие для вашего случая.
iOS
Прочитавшие раздел об Android этой главы быстро заметят, что в данной сфере 
iOS и Android сильно отличаются друг от друга, и одно из наиболее заметных 
отличий – доступные способы отображения обратной связи. Давайте посмот-
рим, что доступно в iOS и какие варианты пользуются наибольшей популяр
-
ностью.
Отображение обратной связи
с использованием системных инструментов
В iOS есть два способа отображения обратной связи: предупреждения и листы 
запроса пользовательских действий (action sheets). Оба реализованы на основе 
класса 
UIAlertController
и отличаются только передачей аргумента 
.alert
или 
.actionSheet
.
В iOS нет встроенной поддержки вывода уведомлений в стиле 
Snackbar
. Однако 
аналогичный эффект можно получить с помощью сторонней библиотеки, но мы не 
будем обсуждать эту возможность, так как это выходит далеко за рамки данной 
книги.
Apple в своей документации не дает четких указаний, когда лучше исполь
-
зовать листы действий, а когда предупреждения, однако за многие годы был 
выработан стандарт де-факто – использовать предупреждения, когда неожи
-
данно возникло событие, требующее немедленной обратной связи, а листы 
действий – в ответ на действия пользователя, когда пользователю понятен 
контекст выполняемого действия и требуется, чтобы он выбрал один из вари
-
антов.
Вот пример отображения предупреждения:
let viewController = UIViewController(nibName: ..., bundle: ...)
let alert = UIAlertController(
title: "Title", message: "This is the message", preferredStyle: .alert)
alert.addAction(
UIAlertAction(title: "OK", style: .default, handler: { (action) in
print("OK button pressed!")
}))
viewController.present(alert, animated: true, completion: nil)
Рассмотрим этот код подробнее.
Сначала создается контроллер представлений, который потом будет задей
-
ствован для отображения предупреждений. Начиная с версии iOS 8 представ
-


178

Обратная связь с пользователем
ления предупреждений фактически являются экземплярами 
UIViewController
и могут отображаться другими контроллерами представлений, как любые дру
-
гие представления. Далее вызовом инициализатора 
UIAlertController
создает
-
ся экземпляр предупреждения. Ему передаются параметры 
title

message
и 
pre­
ferredStyle
. В последнем параметре передается аргумент 
.alert
, указывающий, 
что создается предупреждение; если передать аргумент 
.actionSheet
, будет соз
-
дан лист действий.
В следующей строке вызывается метод 
addAction(_:)
, чтобы добавить кнопку 
в предупреждение. Здесь мы непосредственно создаем экземпляр 
UIAlertAction
для передачи в этот метод, определив заголовок, стиль (в данном случае 
.de­
fault
) и обработчик кнопки. Внутри обработчика мы выводим сообщение 

Download 3,69 Mb.

Do'stlaringiz bilan baham:
1   ...   114   115   116   117   118   119   120   121   ...   228




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