Пример класса, у которого свойства — функции. Кстати, первое свойство опционально, второе — нет, просто замыкание пустое. class Grapher { var yForX: ((Double) -> Double?)? var action: () -> Void = {} }

Метки:

Подробно про каждый метод ViewController Lifecycle в предыдущей статье Инициализация  (из storyboard) awakeFromNib Подготовка к переходу Установка outlets свойств viewDidLoad Эти две пары методов вызывается когда  view контроллера появляется/уходит с экрана … viewWillAppear and viewDidAppear viewWillDisappear and viewDidDisappear Эти методы обработки геометрии можно вызывать …

Жизненный цикл View Controller шпаргалка Read more »

Метки: ,

Итак жизненный цикл контроллера начинает с создания. Как я уже писал раньше  — в 99% случаях создание происходит в storyboard, и «за сценой» происходит инициализация А что потом? А вот что: Подготовка  к переходу в контроллер Установка outlet свойств Появление …

View Controller Lifecycle, жизненный цикл View Controller Read more »

Метки: ,

В 99% случаях мы будем создавать интерфейс с помощью сториборда (storyboard) — встроенного в XCode инструмента Interface Builder. Поэтому всем элементам в этом storyboard  нужно задавать идентификаторы, чтобы потом их найти и обработать. В коде эти идентификаторы нужно собирать в …

Создание интерфейса, storyboard Read more »

Метки:

Предположим есть переход (segue) и он указывает на UINavigationController. Для того чтобы получить контроллер, который показывает UINavigationController, нужно обратиться к свойству visibleViewController // // proSwift.ru // var destination = segue.destinationViewController if let navCon = destination as? UINavigationController { destination = navCon.visibleViewController! }  

Метки:

В каждом контроллере, который содержит множественную  MVC, есть свойство, которое содержит массив контроллеров, которые в нем присутствуют // // proSwift.ru // var viewControllers: [UIViewController] {get set} let navController = UINavigationController() var arrayOfControllers = [UIViewController]() arrayOfControllers = navController.viewControllers

Метки:

Если мы пишем протокол, с помощь которого мы хотим получить данные (DataSource)  то в функции мы всегда должны передать указатель на класс, в который мы эти данные хотим получить: // // proSwift.ru // protocol FaceViewDataSource: class { func smilinessForFeceView(sender: FaceView) …

Протокол и источник данных (DataSource) на примере Read more »

Метки: ,

Жесты в iOS распознаются экземпляром класса UIGestureRecognizer. Происходит это в два этапа: Создание экземпляра подкласса UIGestureRecognizer Добавления метода обработки распознаного жеста // // proSwift.ru // @IBOutlet weak var pannableView: UIView { didSet { let recognizer = UIPanGestureRecognizer(target: self, action: “pan:”) pannableView.addGestureRecognizer(recognizer) } }

Метки:

UIColor  — класс для определения цвета в iOS let black = UIColor.blackColor() Цвет может быть прозрачным полупрозрачным (семь красных линий :-)) let transparentBlue = UIColor.blueColor().colorWithAlphaComponent(0.5) Чтобы рисовать внутри UIView полупрозрачными цветами, надо сказать системе, что мы будем это делать. Для …

UIView и прозрачность, UIColor Read more »

Метки: ,