Для того, чтобы пользователи приложения не тыкали своими шаловливыми ручками куда попало не могли вводить заведомо не корректный текст, можно реализовать ряд ограничений для них.
На сайтах обычно это реализуется с помощью JS-скриптов, которые, теоретически, могут быть оключены пользователем на глобальном уровне, и все ограничения, реализованные с помощью JS перестанут действовать.
В iOS-приложении пользователь ничего отключить не сможет :)
Дале - примеры кода...
Ситуация: xCode v.10.xx, после импорта свежего сертификата и ключа iphone distribution в Keychain, в нем отображается красным цветом надпись:
Сертификат iphone distribution ненадежен
По умолчанию объект UITextView не имеет границы (в отличие от UITextField). Иногда это не критично, но в некоторых случаях граница для текстового поля все-таки необходима:
Например, когда цвет фона родительского View и нашего UITextView одинаковые, и нет контраста между ними, то пользователям будет не понятно, где находится граница UITextView.
При использовании кастомных цветов для элементов интерфейса приложений могут быть проблемы с их отображением при использовании тёмной темы на устройствах.
Чаще всего тексты могут быть просто плохо читаемы, или совсем не читаемы из-за отсутствия контраста между цветом фона и цветом, например, текстовых меток.
Если содержимое UILabel в интерфейсе мобильного приложения может варироваться от одного короткого слова до двух предложений, то нужно немного постараться, чтобы это выглядело адекватно хорошо на различных устройствах с разными экранами.
Когда UILabel не имеет фиксированного размера и должен меняеться динамически в зависимости от количества текста в нем, то это делается следующим образом:
Функция для вычисления факториала с помощью Swift:
func factorial(_ x: Int) -> Int {if x < 1 {return 1}return x * factorial(x-1)}
Запуск функции:
var z = factorial(-3)print(z)
В некоторых ситуациях пользователям iPhone или iPad может быть не удобно задействовать две руки, чтобы сделать скриншот экрана во время использования приложения, и они были бы счастливы делать это с помощью нажатия на одну кнопку - прямо в интерфейсе приложения.
На самом деле ни разу даже не возникало такой мысли - делать скриншот экрана iPhone с помощью одной кнопки в интерфейсе приложения, пока один товарищ не рассказал, что есть категория пользователей устройств Apple "старой закалки", которым не удобно растопыривать пальцы и задейстывовать две руки для сохранения изображения экрана.
Если xCode при компиляции проекта ругается на часть кода и выдает ошибку, например, такую:
Thread 4: Exception: -[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] may only be called from the main thread.
Это означает, что данный кусок кода должен выполняться в главном потоке, а не в дополнительном.
При публикации приложения в App Store кроме описания программы необходимо добавлять снимки экрана. Скриншоты экрана можно сделать с симулятора.
Но: в iTunes Connect указаны размеры экранов в дюймах, а в xCode при выборе симулятора указаны только модели iPhone и iPad без подробностей, какие у них экраны, соответственно, нужно или помнить размеры всех нужных устройств, или иметь под рукой шпаргалку.
Различные полезности xCode для начинающих. То, что облегчает жизнь разработчику и уменьшает трудоемкость. Простые мелочи, описание которых не требует отдельной статьи.
Конечно, после использования много раз это запомнится, и шпаргалка будет не нужна, но даже в этом случае она может пригодиться другим.
Для каждого php-приложения очень желательно жестко настроить локаль, чтобы не зависеть от настроек сервера. Иначе, по "закону подлости" - в самый неподходящий момент могут возникнуть проблемы с отображением данных. Причем, "артефакты" могут вылезти не только после переезда/миграции на другой сервер, но и даже как будто вообще без причины. Как раз подобный случай и произошел недавно с одним...
В iOS13 появилась возможность изменить язык интерфейса приложения, не меняя язык операционной системы. Если для вас важен этот функционал, то срочно обновляйте iOS своего гаджета до 13 версии! :)
При приготовлении торта практически всегда кондитеры используют специальную рамку, которая определяет форму торта и ограничивает его размеры. Чаще всего эта рамка имеет форму круга, чуть реже - квадрата и прямоугольника. Остальные варианты - овал, сердце, ромб и различные эксклюзивные нестандартные формы - слишком редкие, чтобы принимать их во внимание. Это не важно - откуда был взят рецепт...
Нужно было давеча попасть в небольшую немецкую деревушку - Раунхайм (Raunheim), расположенную не далеко от аэропорта Франкфурт Майн (EDDF/FRA). Расстояние от терминала вроде бы смешное - всего-то около 10 километров, но использовать такси - как-то не спортивно, пешком - не солидно, в результате было принято решение воспользоваться железнодорожным немецким транспортом. Железнодорожный транспорт в Германии очень...
Очередная статья про особенности программы Jeppesen FliteStar/FliteMap, которые не всем известны. Jeppesen FliteStar/FliteMap - программа для предварительного планирования полетов, расчета маршрута с широким набором функций. Jeppesen FliteMap к тому же поддерживает подключение GPS-антенны и запись трека. При создании нового маршрута полета (перелета) в программе Jeppesen FliteStar/FliteMap по умолчанию он...
Ширитон Виталий Иванович - полковник ВВС, летал на Л-29, Л-39, МИГ-17, МИГ-21. С 1978 по 1984 годы был командиром полка 809 УАП (в/ч 19109) Харьковского высшего военного авиационного училища летчиков. При нем летный состав впервые в истории части освоил полеты в сложных метеоусловиях при первом минимуме погоды с использованием СДУ и боевое применение по наземным целям с практической стрельбой неуправляемыми...
Современные сайты часто содержат множество мультимедийного контента, одной из разновидностью которой является flash-анимация (флэшка, флэш-ролик). Флэш ролик представляет собой swf-файл, внедренный в web-страницу. Флэш-анимация может быть как черно-белой, так и цветной, со звуком и без, размером пару килобайт и даже в несколько мегабайт. Некоторые анимации могут на столько понравиться посетителю сайта, что...