GLKViewController
Наследование
-
NSObject -
UIResponder -
UIViewController -
GLKViewController
-
NSObject -
UIResponder -
UIViewController -
GLKViewController
Соответствует
Оператор импорта
Swift
import GLKit
Objective C
@import GLKit;
Доступность
Доступный в iOS 5.0 и позже.
GLKViewController класс обеспечивает всю стандартную функциональность контроллера представления, но дополнительно реализует OpenGL цикл рендеринга ES. A GLKViewController возразите работам в сочетании с a GLKView возразите для отображения кадров анимации в представлении.
Для использования этого класса выделите и инициализируйте новое GLKViewController подкласс и набор view свойство для указания на a GLKView объект. Затем сконфигурируйте контроллер представления preferredFramesPerSecond свойство к уровню нужного кадра Ваше приложение требует. Можно установить делегата или сконфигурировать другие свойства на контроллере представления, такой как, приостанавливается ли цикл анимации автоматически или возобновляется, когда приложение перемещается в фон.
Когда активный, представление цикла автоматически обновляет содержание представления каждый раз, когда новый кадр должен быть выведен на экран. Каждый кадр представляется контроллером представления с помощью этих шагов:
Контроллер представления вызывает своего делегата
glkViewControllerUpdate:метод. Ваш делегат должен обновить данные кадра, не включающие рендеринг результатов на экран.Контроллер представления вызывает свое представление
displayметод. Ваше представление должно перерисовать кадр.
Разделение на подклассы примечаний
Ваше приложение должно разделить на подклассы GLKViewController и переопределение viewDidLoad и viewDidUnload методы. Ваш viewDidLoad метод должен установить Ваш контекст и любые drawable свойства и может выполнить другое распределение ресурсов и инициализацию. Точно так же Ваш класс viewDidUnload метод должен удалить drawable объект и свободный любые ненужные ресурсы.
Как альтернатива реализации a glkViewControllerUpdate: метод в делегате, Ваш подкласс может обеспечить метод обновления вместо этого. Метод должен иметь следующую подпись:
- (void)update;
-
preferredFramesPerSecondСвойствоУровень Вы хотите, чтобы контроллер представления вызвал представление для обновления содержания представления.
Объявление
Swift
var preferredFramesPerSecond: IntObjective C
@property(nonatomic) NSInteger preferredFramesPerSecondОбсуждение
Когда Ваше приложение устанавливает свою предпочтительную частоту кадров, контроллер представления выбирает частоту кадров максимально близко к тому на основе возможностей экрана, на котором выведено на экран представление. Выбранная реальная частота кадров обычно является фактором максимальной частоты обновления экрана для обеспечения непротиворечивой частоты кадров. Например, если максимальная частота обновления экрана
60кадры в секунду, который является также самой высокой частотой кадров наборы контроллера представления как реальная частота кадров. Однако, если Вы просите более низкую частоту кадров, она могла бы выбрать30,20,15или некоторый другой фактор, чтобы быть реальной частотой кадров.Ваше приложение должно выбрать частоту кадров, которую оно может последовательно поддерживать.
Значение по умолчанию
30кадры в секунду.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
См. также
-
framesPerSecondСвойствоФактическая ставка, что контроллер представления пытается вызвать представление для обновления его содержания. (только для чтения)
Объявление
Swift
var framesPerSecond: Int { get }Objective C
@property(nonatomic, readonly) NSInteger framesPerSecondОбсуждение
Контроллер представления пытается поддержать эту частоту кадров, но это может все еще отбросить кадры, если обработка на кадр, выполняемая Вашим приложением, занимает больше времени, чем время между кадрами.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
См. также
-
delegateСвойствоДелегат контроллера представления.
Объявление
Swift
@IBOutlet unowned(unsafe) var delegate: GLKViewControllerDelegate!Objective C
@property(nonatomic, assign) IBOutlet id<GLKViewControllerDelegate> delegateОбсуждение
Делегат является дополнительным.
Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
pausedСвойствоБулево значение, указывающее, приостанавливается ли цикл рендеринга.
Объявление
Swift
var paused: BoolObjective C
@property(nonatomic, getter=isPaused) BOOL pausedОператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
pauseOnWillResignActiveСвойствоБулево значение, указывающее, приостанавливает ли контроллер представления автоматически цикл рендеринга, когда приложение оставляет активное состояние.
Объявление
Swift
var pauseOnWillResignActive: BoolObjective C
@property(nonatomic) BOOL pauseOnWillResignActiveОбсуждение
Значение по умолчанию
YEStrue. Если Ваше приложение устанавливает это вNOfalse, это должно явно установитьpausedсвойство кYEStrueкогда приложение оставляет активное состояние.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
resumeOnDidBecomeActiveСвойствоБулево значение, указывающее, возобновляет ли контроллер представления автоматически цикл рендеринга, когда приложение становится активным.
Объявление
Swift
var resumeOnDidBecomeActive: BoolObjective C
@property(nonatomic) BOOL resumeOnDidBecomeActiveОбсуждение
Значение по умолчанию
YEStrue. Если Ваше приложение устанавливает это вNOfalse, это должно явно установитьpausedсвойство кNOfalseкогда приложение становится активным.Оператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
framesDisplayedСвойствоЧисло обновлений кадра, отправленных контроллером представления, так как это создавалось. (только для чтения)
Объявление
Swift
var framesDisplayed: Int { get }Objective C
@property(nonatomic, readonly) NSInteger framesDisplayedОператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
timeSinceFirstResumeСвойствоКоличество времени, передавшее с первого раза контроллер представления, продолжило отправлять события обновления. (только для чтения)
Объявление
Swift
var timeSinceFirstResume: NSTimeInterval { get }Objective C
@property(nonatomic, readonly) NSTimeInterval timeSinceFirstResumeОператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
timeSinceLastResumeСвойствоКоличество времени, передавшее с прошлого раза контроллер представления, продолжило отправлять события обновления. (только для чтения)
Объявление
Swift
var timeSinceLastResume: NSTimeInterval { get }Objective C
@property(nonatomic, readonly) NSTimeInterval timeSinceLastResumeОператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
timeSinceLastUpdateСвойствоКоличество времени, передавшее с прошлого раза контроллер представления, вызвало делегата
glkViewControllerUpdate:метод. (только для чтения)Объявление
Swift
var timeSinceLastUpdate: NSTimeInterval { get }Objective C
@property(nonatomic, readonly) NSTimeInterval timeSinceLastUpdateОператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
-
timeSinceLastDrawСвойствоКоличество времени, передавшее с прошлого раза контроллер представления, вызвало представление
displayметод. (только для чтения)Объявление
Swift
var timeSinceLastDraw: NSTimeInterval { get }Objective C
@property(nonatomic, readonly) NSTimeInterval timeSinceLastDrawОператор импорта
Objective C
@import GLKit;Swift
import GLKitДоступность
Доступный в iOS 5.0 и позже.
