/ / initWithFrame по-бързо от view.frame? - ios, цел-c, изпълнение, uiview

initWithFrame по-бързо от view.frame? - ios, цел-c, изпълнение, uiview

Аз просто съм любопитен, когато става въпрос за инициализиране UIViewс; Забелязвам, че когато се обадя на конструктора на потребителски модел -(id)initWithFrame:(CGRect)frame, примитивният конструктор -(id)init никога не се нарича, което означава, че ще трябва да инициализирам променливи на променливите в двата конструктора. Това означава ли да бъде стратегия за оптимизация, така че да се обаждате -(id)initWithFrame:(CGRect)frame е изчислително "по-бързо" (насърчаване на по-добра производителност) от обаждането UIView *view = [UIView new]; view.frame = frame;? Опцията initWithFrame е по-бърза от създаването на нов потребителски модел и ръчно задаване на рамката? Всъщност предпочитам да го направят, за да запази програмната последователност.

Отговори:

2 за отговор № 1

Не е просто това initWithFrame е означен инициализатор на UIView (от клас позоваване):

дискусия

Новият обект за преглед трябва да бъде вмъкнат визглед йерархия на прозореца, преди да може да се използва. Ако създадете изглед обектно програмно, този метод е предназначен за инициализатора клас UIView. Подкласовете могат да заменят този метод, за да изпълняват всички потребителски инициализация, но трябва да се обадя супер в началото на техните изпълнение.