Если мы имеем дело с [AnyObject], мы можем делать привидение типов (casting) элементов или всего массива целиком. // // proSwift.ru // for item in toolbarItems { // тип item — AnyObject if let toolbarItem = item as? UIBarButtonItem { // используем в коде …

Работа с массивом [AnyObject], приведение типов Read more »

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

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

Свойства с отложенной инициализацией или свойства ленивого хранения — свойство, начальное значение которого не рассчитывается до первого использования. Индикатор ленивого свойства — ключевое слово lazy.

Наблюдали свойств — очень важная вещь в разработке программ под iOS.  Их очень часто применяют на практике, поэтому советую хорошо разобраться в этом вопросе. Я приведу примеры установки свойств, с минимумом комментариев, однако, если потребуется дополнительное пояснение — я с …

Наблюдатели свойств в Swift: willSet и didSet Read more »

Многие начинающие программисты путаются в понятиях методов типов (types) и методов экземпляров (instances). Есть очень хороший пример, на котором можно разобрать оба варианта методов.  Собственно, свойства также могут быть свойствами типа и класса. // // proSwift.ru // var d: Double = -3,5 if …

Метод класса и метод типа в Swift Read more »

Для преобразования строки в число используется конструкция вида: // // proSwift.ru // let someString: String = «543» NSNumberFormatter().numberFromString(someString).doubleValue В данном случае обобщенное число number преобразуется в Double NSNumber Generic класс для чисел let n = NSNumber (325.75) let intNumber = n.IntValue …

Преобразование String to Double Read more »

Если Вы проектируете программу с математическими вычислениями, то наверняка буде использовать разделитель целой и дробной части в числах  Double и Float. Запомните: в каждом регионе этот разделитель свой! Чтобы получить его нужно выполнить следующий код: let decimalSeparator = NSNumberFormatter().decimalSeparator ?? …

Десятичный разделитель на Swift Read more »