2015-06-19 64 views
-1

我想知道是否有任何可能的方式通過我可以動態更改UIButton的位置,具體取決於手機的屏幕大小(4s,5系列和6)動態更改按鈕的x和y

在此先感謝。

+0

使用Autolayout和尺寸等級來改變位置 – suthar

+0

是的,你也可以使用AutoLayout來設置每個設備尺寸的按鈕,否則你可以通過setFrame設置按鈕框架和它的位置。 –

回答

0

有多種方式來解決這個問題:

1)隨着AutoLayout您可以指定哪些描述意見如何相互關聯的規則。這將使應用程序能夠智能地適應任何屏幕尺寸,如果精心實施的話。

2)您可以在運行時檢查設備版本並以編程方式適當地佈置您的視圖。

1是首選的解決方案,並且是iOS上的最佳實踐。

+0

那麼,我所說的按鈕是以編程方式添加的,由於我是新來的自動Layouts,我不知道如何以編程方式執行它。你能幫我一下嗎? – sam24

+1

在這種情況下,您需要以編程方式添加自動佈局規則。爲了幫助你,我需要看到你的觀點,因爲它是目前的佈局和你想要的樣子的描述。在附註中,我建議你「接受」人們給你的問題的答案。如果你從不花時間接受人們給出的答案,那麼人們不太可能想要幫助你。 – Woodstock

0

就像建議的伍德斯托克你可以使用Autolayout。但是,如果您熟悉它並且具有簡單的用例,則可以使用[UIScreen mainScreen] bounds].size.height屬性來獲取屏幕高度,並使用if/switch將其與不同設備的大小進行比較,然後分別在每個設備中調用以下內容的案件相應調整其立場。

[button setCenter:<CGPoint calculated goes here>]; 

對於Autolayout方法,您可以結帳this answer

+0

不應該建議使用此方法。 AutoLayout是現在iOS的很多功能所必需的。與iOS9甚至更多。 – Fogmeister