![](/img/trans.png)
[英]is it safe to add UIView to another so that child view's frame is much larger than parent's frame
[英]UIView frame larger than iPhone's screen
我用XCode創建了一個新的基於iPhone View的項目,並查看了生成的xib,名稱為myAppViewController.xib
。 在該xib中,生成的視圖的框架如下所示: { x = 160, y = 230, w = 320, h = 460 }
該視圖應填滿整個屏幕,不包括狀態欄。 我希望視圖的框架如下所示: { x = 0, y = 0, w = 240, y = 300 }
對於較舊的iPhone,而{ x = 0, y = 0, w = 480, h = 600 }
用於視網膜顯示。 但是,我得到了上面那些奇怪的值。 誰能告訴我這里發生了什么,這正在破壞我其他項目中的某些繪圖代碼(要繪制的區域基於視圖的框架)。
視網膜顯示實際上並不會增加視圖的點大小。
當蘋果公司推出它時,它在點數和像素數之間產生了不同。 視網膜顯示具有更多像素,但點數相同。
與UIKit相關的代碼中的所有內容通常都以磅為單位,因此此處無需進行任何更改,視圖大小仍為100x100。
我真的不明白您的問題,但是可以通過bounds屬性和center屬性來修改幀值...因此請檢查您是否未修改這些值。
框架矩形是這樣的:
CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat height)
屏幕寬度為320像素寬x 480像素高。 狀態欄為20px。 因此,您想要的矩形是:
CGRectMake(0,0,320,460)
無論是否視網膜,設備都會根據需要進行轉換。
坐標以點為單位,而不是像素。 不管屏幕分辨率如何,坐標系均為320 X 480。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.