Для того, чтобы пользователи приложения не тыкали своими шаловливыми ручками куда попало не могли вводить заведомо не корректный текст, можно реализовать ряд ограничений для них.

Ограничения для UITextField на ввод текста На сайтах обычно это реализуется с помощью JS-скриптов, которые, теоретически, могут быть оключены пользователем на глобальном уровне, и все ограничения, реализованные с помощью JS перестанут действовать.

В iOS-приложении пользователь ничего отключить не сможет :)

Дале - примеры кода...

Ситуация: xCode v.10.xx, после импорта свежего сертификата и ключа iphone distribution в Keychain, в нем отображается красным цветом надпись:

 

Сертификат iphone distribution ненадежен

 

Сертификат iphone distribution ненадежен - iPhone Distribution certificate is not trusted 

По умолчанию объект UITextView не имеет границы (в отличие от UITextField). Иногда это не критично, но в некоторых случаях граница для текстового поля все-таки необходима:

Как добавить границу для UITextView (Swift)

Например, когда цвет фона родительского View и нашего UITextView одинаковые, и нет контраста между ними, то пользователям будет не понятно, где находится граница UITextView.

При использовании кастомных цветов для элементов интерфейса приложений могут быть проблемы с их отображением при использовании тёмной темы на устройствах.

Простая реализация поддержки тёмной темы для iOS

Чаще всего тексты могут быть просто плохо читаемы, или совсем не читаемы из-за отсутствия контраста между цветом фона и цветом, например, текстовых меток.

Если содержимое UILabel в интерфейсе мобильного приложения может варироваться от одного короткого слова до двух предложений, то нужно немного постараться, чтобы это выглядело адекватно хорошо на различных устройствах с разными экранами.

Как выровнять многострочный UILabel по верхнему краю

Когда UILabel не имеет фиксированного размера и должен меняеться динамически в зависимости от количества текста в нем, то это делается следующим образом:

В некоторых ситуациях пользователям iPhone или iPad может быть не удобно задействовать две руки, чтобы сделать скриншот экрана во время использования приложения, и они были бы счастливы делать это с помощью нажатия на одну кнопку - прямо в интерфейсе приложения.

Swift - как сделать скриншот одной кнопкойНа самом деле ни разу даже не возникало такой мысли - делать скриншот экрана iPhone с помощью одной кнопки в интерфейсе приложения, пока один товарищ не рассказал, что есть категория пользователей устройств Apple "старой закалки", которым не удобно растопыривать пальцы и задейстывовать две руки для сохранения изображения экрана.

xCode - UIKeyboardTaskQueue may only be called from the main thread

Если xCode при компиляции проекта ругается на часть кода и выдает ошибку, например, такую: 

 

Thread 4: Exception: -[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] may only be called from the main thread.

 

Это означает, что данный кусок кода должен выполняться в главном потоке, а не в дополнительном.

При публикации приложения в App Store кроме описания программы необходимо добавлять снимки экрана. Скриншоты экрана можно сделать  с симулятора.

Размеры экранов iPhoneНо: в iTunes Connect указаны размеры экранов в дюймах, а в xCode при выборе симулятора указаны только модели iPhone и iPad без подробностей, какие у них экраны, соответственно, нужно или помнить размеры всех нужных устройств, или иметь под рукой шпаргалку.

Различные полезности xCode для начинающих. То, что облегчает жизнь разработчику и уменьшает трудоемкость. Простые мелочи, описание которых не требует отдельной статьи.

Чистый код в xCode 

Конечно, после использования много раз это запомнится, и шпаргалка будет не нужна, но даже в этом случае она может пригодиться другим.


      Загрузка фильмов по Wi-Fi в iPad
      Загрузка фильмов по Wi-Fi в iPad

      В продолжение статьи "Как закачать видео на ipad" возникла необходимость написать новую шпаргалку - в соответствии с "заявками телезрителей" - как выполнить это с использованием Wi-Fi, если планшет заблокирован на подключение к "чужим" компьютерам. Подобная ситуация возможна при использовании корпоративных планшетов, которые были настроены с помощью MDM (были переведены в режим SUPERVISED (управляемые), и для них был активирован запрет на подключение к чужим...




      Ошибка
      Ошибка "Failed to initialize JIT-EDocs API"

      Пользователи, на компьютерах (ноутбуках) которых установлены программы Jeppesen FliteStar/FliteMap и Jepp View иногда после очередного обновления навигационной базы данных при запуске программы FliteStar/FliteMap могут увидеть сообщение об ошибке: Сообщение об ошибке "Failed to initialize JIT-EDocs API. (-7019) Unknown error" говорит, что программа не может инициализировать JIT-EDocs API.




      Как вернуть деньги за покупку у Apple
      Как вернуть деньги за покупку у Apple

      Высокий уровень лояльности компании Apple к своим клиентам подтверждается в том числе и возможностью отменить покупку платного приложения, подписки или контента. С точки зрения мобильного разработчика данная информация, по идее, должна быть спрятана от пользователей мобильных устройств, а процедура запроса возврата потраченных денег должна быть сильно усложнена, бюрократизирована и доведена до уровня...




      Фразы про ЧАСТИ ТЕЛА (BODY PARTS)
      Фразы про ЧАСТИ ТЕЛА (BODY PARTS)

      В очередной раз откроем словарик и начнем удивляться смыслу перевода некоторых английских фраз и выражений. Что поделать? - Сленг! Вот вам выражения, в которых используются части человеческого тела (BODY PARTS), использование их в повседневной английской речи и сравнение с русскими аналогами. 1. TO LEND SMB A HAND (досл. «одалживать руку»). По-русски это означает: помогать кому-либо. Пример: This box is heavy....




      6,5-тысячелетняя  эра Jeppesen!
      6,5-тысячелетняя эра Jeppesen!

      В навигационных программах Jeppesen (Jepp View, eLink for Windows и др.), имеющих базу данных со схемами аэропортов (Terminal Charts), срок действия этой навигационной базы данных задавался с помощью текстового файла charts.ini.




      Специализированные DOZORные программы
      Специализированные DOZORные программы

      У каждой команды, которая играет в DOZOR должен быть штаб. Обычно штаб размещается в квартире или в доме одного из игроков команды, иногда на работе одного или нескольких игроков. Второе - сложнее, т.к. при этом надо быть в очень хороших отношениях с начальством или быть этим самым начальством! :) Помимо стандартного обеспечения компьютерами, Интернетом, кофе, чаем, пивом и другими необходимыми полезностями и...




      Восхождение на восточную вершину горы Эльбрус с флагом авиакомпании Волга-Днепр
      Восхождение на восточную вершину горы Эльбрус с флагом авиакомпании Волга-Днепр

      Сейчас я уже не помню точно, да это и не важно - с чего все началось…, но в итоге образовалась инициативная группа из 7 человек с твердым намерением совершить восхождение на гору Эльбрус. В целях получения финансовой поддержки было подготовлено письмо и передано руководству нашей организации, в которой мы осуществляем свою трудовую деятельность с предложением в очередной раз прославить (в...



Яндекс.Метрика
Сайт работает на быстром VPS/VDS хостинге от FASTVPS