簡體   English   中英

Xcode 6 Storyboard大小錯誤?

[英]Xcode 6 Storyboard the wrong size?

在Xcode 6(Beta 1)中從Swift開始構建一個新項目,並且看到了Storyboard和我正在查看的輸出的一些奇怪行為。

我已經構建了一個簡單的界面(如下所示) - 包含View Controller的屬性。 當我在模擬器中運行它時,我希望“Hello,World”成為用戶界面的核心 - 但是看起來這個“Square”只是適合iPhone屏幕,因此顯示了錯誤的視圖(見下文) )。

我的問題是:有其他人看到過這種行為,他們是如何解決這個問題的?

謝謝!

從故事板編輯器中查看

屬性檢查員

大小檢查員

模擬器輸出

執行以下步驟以解決此問題

在Storyboard中,選擇任何視圖,然后轉到“文件”檢查器。 取消選中“使用大小類”,您將要求保留大小類數據:iPhone / iPad。 然后單擊“禁用大小類”按鈕。 這樣做會使故事板的視圖大小與所選設備一致。

雖然Asif Bilal的答案是一個更簡單的解決方案,它不涉及大小類(在iOS 8中引入),但強烈建議您習慣使用大小類,因為它們是未來,並且最終你會在某些方面跳入點。”


您可能沒有添加布局約束。

選擇標簽,點擊底部的布局約束按鈕:

在此輸入圖像描述

在該菜單上添加寬度和高度(它不應該與我的相同)通過選中它們的復選框並單擊添加約束。 然后按住Control鍵並將標簽拖到主視圖中,然后在單擊時,應該選擇在容器中水平和垂直居中。 添加兩者,您應該進行設置。

如果您使用Xcode 6並為iOS 8設計,則這些解決方案都不正確。 要使您的僅iPhone視圖正確調整大小,請不要關閉大小類,不要關閉推斷的指標,也不要設置約束(尚未)。 相反,使用size類控件,它是Interface Builder底部的一個容易遺漏的文本按鈕,最初讀取“wAny hAny”。

單擊按鈕,然后選擇“緊湊寬度”,“常規高度”。 這會調整視圖大小並覆蓋所有iPhone縱向方向。 Apple的文檔在這里: https//developer.apple.com/library/ios/recipes/xcode_help-IB_adaptive_sizes/chapters/SelectingASizeClass.html或搜索“在Interface Builder中選擇大小類”

在Storyboard中,選擇ViewController並轉到Atribute Inspector。 在最頂部,在“模擬度量標准”下,您具有“大小”和“方向”屬性,這些屬性設置為“推斷”。 將它們更改為所需的值。

為了使應用程序能夠在另一個屏幕尺寸上正確顯示,您還必須設置約束,如CanPoyrazoğlu在第一篇文章中所述。

我在xcode 6中遇到了這個問題,並且有一種方法可以解決調整大小沖突。 如果選擇視圖,則會在底部看到一個類似於|-Δ-|的圖標。 如果單擊它,您的項目將調整為不同的設備調整大小。

轉到“屬性檢查器”(右上角)“模擬指標”,其中包含“大小”,“方向”,“狀態欄”,“頂欄”,“底欄”屬性。 對於SIZE,更改Inferred - > Freeform。

在Storyboard頁面上,轉到File Inspector並取消選中“Use Size Classes”。 這應該將您的視圖控制器縮小到您熟悉的常規IPhone大小。 請注意,使用“大小類”可以讓您跨多個設備設計項目。 取消選中后,Xcode將為您提供如下警告對話框。 這應該是自我解釋的。

“禁用大小類會將此文檔限制為存儲單個設備系列的數據。將保留最能代表目標設備的大小類的數據,並刪除所有其他數據。此外,segues將轉換為非 - 適應性等價物。“

對於使用XCode 7的任何人來說,設計特定設備尺寸(而不是默認的方形畫布)非常容易。

在Interface Builder中,從左側菜單中選擇ViewController或Scene。 然后在Show the Attributes Inspector ,轉到Simulated Metrics ,從下拉菜單中選擇所需的Size

您可能會使用“解決自動布局問題”(右下角 - 故事板視圖中的三角形圖標)來添加/重置建議的約束(Xcode 6.0.1)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM