2012-11-14 49 views
1

我有一個專爲iPhone 4設計的應用程序。此應用程序具有一個工具欄,可以在界面生成器中拖放到屏幕底部。在模擬器的iPhone 5「設備」上進行測試時,工具欄不會自動進入屏幕底部。iPhone 4到iPhone 5 - 工具欄不會移動到底部

我的問題是 - 是否有某種技巧或技巧,讓所有UITables「伸展」以填充所有新的可用空間,並且工具欄會到達底部,無論它連接的是什麼類型的iPhone至?以編程的方式完成這將是很痛苦的 - 那就是弄清楚我是什麼樣的iPhone,然後以編程方式重新定位所有用戶界面。如果這實際上是必須的,那麼任何新的iPhone應用程序都應該設計爲4英寸視網膜,然後以編程方式縮小iPhone 4尺寸的所有尺寸,或者設計爲3.5英寸更好,然後伸展並按下工具欄以防萬一是iPhone 5與4" 畫面。

感謝任何輸入..

+0

那是什麼的AutoResizingMask是,所有UIViews和UIViewControllers有它 –

+0

http://stackoverflow.com/questions/12414817/iphone-5-4-bottom-工具欄沒有響應 [1]:http://stackoverflow.com/questions/12414817/iphone-5-4-bottom-toolbar-not-responding – iArezki

+0

AutoResizingMask是我在InterfaceBuilder中設置的東西,或者是我添加的東西編程? – geekyaleks

回答

1

如果你只使用iOS 6中,最簡單的方法是使用自動佈局和界面生成器中添加約束。約束將描述工具欄的底部邊緣應該等於超級視圖的底部邊緣,您不必爲單個設備專門編寫代碼,爲了讓UITableView伸展來填充所有可用空間,我會再次建議在上使用約束UIScrollView(不是UITableView,它位於滾動視圖內)來描述這種行爲,例如滾動視圖的頂邊應該等於超視圖的頂部,左邊應該等於超視圖的左邊,底邊應該等於UIToolbar的頂部(在IB中,間距約束指定UIToolbar和UIScrollView之間的間距應該等於0),右邊緣應該等於超級觀點的邊緣。

如果您不能使用約束,則使用struts和spring系統指定此行爲,該系統利用視圖上的autoresizingMask屬性指定UITableView的父級UIScrollView具有靈活的寬度和高度,並且UIToolbar具有固定身高和靈活配合。您可以通過設置它們各自的框架屬性來手動定位UIScrollView和UIToolbar,該屬性描述左上邊緣的x,y座標以及視圖的寬度和高度。

+0

謝謝,我得到了工具條出現在底部,沒有不管iPhone 5還是iPhone 4作爲選定的硬件設備都很重要。我需要制定tableview ... – geekyaleks