iphone builder教學 - 無法在IB中調整UIView的大小




ui教學 interface (8)

只需轉到檢查員,轉到第一個面板(或按命令1),然後將名為“模擬用戶界面元素”的部分中標記為狀態欄,頂欄和底欄的欄更改為無。 您可能需要點擊這個小三角形才能看到它們。

可能是簡單的東西,但我不明白為什麼我無法在Interface Builder中的xib中調整UIView的大小。

我在xcode中創建了一個新的視圖XIB,並且在大小檢查器中,寬度和高度被禁用,並且被460變成320.這很奇怪,因為我可以改變其他兩個視圖的大小(與另外兩個標籤欄相關聯項目)。

我不確定這是否有什麼關係,但我最近將sdk更新為3。

謝謝!


您正在查找的部分位於第一個Inspector面板(Command-1)上。 在頂部有一個標有模擬用戶界面元素的部分。 默認狀態欄已打開。 你需要確保所有三個都設置為None。


我以不同的方式整理出來......

用你最喜歡的文本編輯器打開你的xib並編輯這一行

        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="CompassViewController">

CompassViewController是你試圖鏈接你的nib / xib的類名。

只需用正確的課程名稱編輯您的課程名稱,即可完成;)


我認為在模擬任何用戶界面元素(如Interface Builder中的狀態欄)時無法編輯大小。 如果啟用任何模擬元素,您可以嘗試關閉模擬元素。 不完全確定這是為什麼,所以如果有人知道為什麼這是真實的,那麼會很感激任何人的反饋 - 必須有一個很好的理由。


我注意到在創建xib文件時自動創建的UIView不能從尺寸面板或邊緣句柄調整大小。

我所做的只是添加另一個UIView,並將所有從舊UIView拖到新的UIView,然後刪除舊UIView。

它解決了我的問題,但是,我認為蘋果解決方案的界面生成器存在潛在的問題(如果我錯了,有人糾正我)。

我正在使用XCode 4集成接口構建器。


有趣的我有一個類似的問題。 我已經從xib文件中刪除了所有視圖並重新添加了一個視圖。 將狀態欄設置為“未指定”,以便狀態欄不適用。 添加時,視圖按照我的預期創建,其中x = 0,y = 0,w = 320 h = 460而不是(0,0,320,480)。 將高度更改為480後,將其連接到文件所有者並更改顏色以使其與背景相關。 我發現屏幕頂部和視圖之間有一個白色的帶子。 我用以下代碼增強了我的代碼:

#define RECTLOG(rect)    (NSLog(@""  #rect @" x:%f y:%f w:%f h:%f", rect.origin.x, rect.origin.y, rect.size.width, rect.size.height ));

在viewDidLoad中

- (void)viewDidLoad {
    [super viewDidLoad];
    RECTLOG(self.view.frame);
}

事實證明,視圖是從IB加載的,實際上是(0,20,320,480)。作為解決方法,我用self.view.frame = CGRectMake(0,0,320,480)重置視圖的框架;

我正在使用IB 3.2.5

我很想知道這個問題的一些小問題。


在Xcode 4.2,iOS 5.0.1中,默認的模擬指標包括將UIViewControllers的'size'屬性模擬為'推斷'

如果將此屬性更改為“Freeform”,那麼您可以調整UIViewController中包含的UIView的大小,同時還可以模擬狀態欄(或其他任何模擬)


我發現自己希望方面填充行為,以便UIImageView將保持自己的縱橫比並完全填充容器視圖。 令人困惑的是,我的UIImageView突破了高優先級等寬和等高限制(在Rob的回答中描述)並以全分辨率渲染。

解決方案只是將UIImageView的內容壓縮阻力優先級設置為低於等寬和等高限制的優先級:





iphone xcode interface-builder