@UIApplicationMain
Атрибут Swift заменяет тривиальный main.m
файл , найденный в проектах Objective-C (чья цель состоит в том, чтобы реализовать main
функцию , что это точка входа для всех программ C и вызоваUIApplicationMain
для начала цикла выполнения Cocoa Touch и приложение инфраструктуры).
В Objective-C основной (хех) бит конфигурации для каждого приложения, который UIApplicationMain
предоставляет функция, - это назначение одного из настраиваемых классов вашего приложения в качестве делегата общего UIApplication
объекта. В Swift, вы можете легко назначить этот класс, добавляя в @UIApplicationMain
атрибут к этому классу декларации. (Вы также можете вызвать UIApplicationMain
функцию напрямую, если у вас есть причина. В Swift вы помещаете этот вызов в код верхнего уровня в main.swift
файле.)
@UIApplicationMain
только для iOS. В OS X делегат приложения традиционно устанавливается в главном файле пера, обозначенном Info.plist (то же самое для Swift, что и для ObjC), но в раскадровках OS X нет главного файла пера, поэтому @NSApplicationMain
там то же самое.
UIApplicationMain
сейчас есть. developer.apple.com/library/ios/documentation/Swift/Conceptual/…Атрибут @UIApplicationMain заменяет файл main.m & и точку входа для запуска вашего приложения.
Еще одна вещь, которую ваша программа может работать без этого @UIApplicationMain, все, что вам нужно сделать, это прокомментировать // @ UIApplicationMain` создать main.swift так же, как main.m в объекте c, и написать код ниже. это будет точка входа в ваше приложение
import Foundation class FLApplication: UIApplication { override func sendEvent(event: UIEvent!) { println("Entry Point") // this is an example } }
источник
Foundation
Импорта, тоFLApplication
случайные подклассы без объявления какой - либо помощи подкласса ... Извините, но ни один из этого ответа не имеют смысл первого предложение , за исключение.AppDelegate.swift исходный файл имеет две основные функции:
Он создает точку входа в ваше приложение и цикл выполнения, который доставляет события ввода в ваше приложение. Эта работа выполняется атрибутом UIApplicationMain (@UIApplicationMain) , который отображается в верхней части файла. UIApplicationMain создает объект приложения, который отвечает за управление жизненным циклом приложения и объект делегата приложения.
Он определяет класс AppDelegate , схему объекта делегата приложения. Делегат приложения создает окно, в котором отображается содержимое вашего приложения, и предоставляет место для ответа на переходы между состояниями в приложении. Класс AppDelegate - это место, где вы пишете свой собственный код на уровне приложения.
источник
Теперь, когда документация Swift обновлена, вот соответствующий отрывок:
https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Attributes.html
источник
@UIApplicationMain - это атрибут, применяемый к описанному ниже классу AppDelegate , чтобы предоставить дополнительную информацию об этом классе.
В этом случае атрибут @UIApplicationMain указывает, что класс AppDelegate является делегатом вашего приложения.
источник
UIApplicationMain Примените этот атрибут к классу, чтобы указать, что это делегат приложения. Использование этого атрибута эквивалентно вызову функции UIApplicationMain и передаче имени этого класса в качестве имени класса делегата. (Источник)
источник