2013-03-27 113 views
2

我在我的iPhone應用程序中創建了一個選擇器,它運行良好 - 但選擇器是疊加層的一部分,所以某些值是硬編碼的,因爲疊加層出現在左側多遠。如何讓UIPickerview適應屏幕尺寸?

因此,當我嘗試製作可比較的iPad版本時會發生明顯的錯誤。我打開了iPad故事板並設置了所有內容,但自然而然,當我運行它時,我的uipickerview出現在巨大的iPad屏幕的中間和左側,有點偏離它應該在的位置。

有沒有什麼辦法可以自動將選取器重疊在中心並擁抱屏幕底部,無論屏幕大小是多少,而不是硬編碼的位置?

iPhone view iPad view

+1

用代碼或約束來做到這一點? – danh 2013-03-27 22:38:43

+0

代碼,我想(不知道你的意思是什麼限制 - 我剛開始編程iOS應用程序,所以我可以很容易地迷路)。 – 2013-03-27 22:39:56

+1

如果您有興趣瞭解約束(或自動佈局,它可以解決您處理的問題),請查看:http://developer.apple.com/library/ios/#recipes/xcode_help-interface_builder/文章/ UnderstandingAutolayout.html – rog 2013-03-27 23:16:00

回答

3

它看起來像不像你想的選擇器,在視圖控制器的主視圖底部休息(它的父,我假設)和一樣寬的觀點。試試這個...

CGRect viewFrame = self.view.frame; 
CGRect pickerHeight = self.picker.frame.size.height; // assume you have an outlet called picker 
CGRect pickerFrame = CGRectMake(0.0, viewFrame.size.height-pickerHeight, 
         viewFrame.size.width, pickerHeight); 
self.picker.frame = pickerFrame; 
+0

完美的工作!謝謝! – 2013-03-27 23:28:22