Допустимо ли использовать UIScreen.mainScreen(). Bounds.size.height для программного позиционирования элементов?
Является ли использование UIScreen.mainScreen(). Bounds.size.height для размещения или размера элементов в моем макете на основе размера устройства приемлемой вещью? Или такого рода вещи заставят меня забраться на кубическую ферму с бесконечным циклом для разгрома?
1 ответ
Решение
Да, это приемлемо, однако вы не хотите звонить UIScreen.mainScreen()
более одного или двух раз, так как это очень медленная функция.
Так что сохраните копию результата в кеше:
var mainScreen: UIScreen
override init() {
self.mainScreen = UIScreen.mainScreen()
}
func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {
let height = self.mainScreen.bounds.size.height;
// do stuff with height
}