4
我看過UIView
子類(如UILabel
)與CGRectZero
調用initWithFrame
的代碼,並且事情似乎正常。用2D點(這似乎是CGRectZero
是什麼)實例化UIView
子類是什麼意思?對於使用CGRectZero的UIView類或子類調用initWithFrame意味着什麼?
我看過UIView
子類(如UILabel
)與CGRectZero
調用initWithFrame
的代碼,並且事情似乎正常。用2D點(這似乎是CGRectZero
是什麼)實例化UIView
子類是什麼意思?對於使用CGRectZero的UIView類或子類調用initWithFrame意味着什麼?
這僅僅意味着你正在實例化視圖而沒有其幀的初始值。
例如,當您要創建視圖對象的實例並且不需要立即將其放入視圖層次結構中時,就可以完成此操作。使用setFrame:可以在稍後執行決定和設置幀。
CGRectZero通常用於在SDK 2.x中初始化UITableViewCell的時候。 tableView:cellForRowAtIndexPath:需要視圖的一個實例,創建時不需要提供框架,因爲表格視圖將自動定位單元格,並在稍後將其設置爲最佳大小。