簡體   English   中英

iOS Autolayout約束:如何為iPhone和iPad制作兩個尺寸完全不同的圖像?

[英]iOS Autolayout constraints: How to have two completely different sized images for iPhone and iPad?

我正在為iPhone和iPad開發一個應用程序。圖像大小需要完全不同(沒有相同的比例)。 我該如何解決這種情況? 我可以在xib文件中執行此操作嗎?還是需要通過代碼來實現? 我只想使用一個xib文件,就是這樣。

您可以使用xib文件並將相應的約束鏈接到您的代碼( ctrl + drag約束從xib文件ctrl + drag到您的swift或Objective-C文件)。

然后,您可以在檢測到您的應用程序在哪種設備上運行后,以編程方式適應這些約束(請參閱此答案: https : //stackoverflow.com/a/10167255/3844377 )。

例如,對於您的寬度約束,您將可以執行以下操作:

IBOutlet widthConstraint: NSLayoutConstraint!

func viewDidLoad()
{
   super.viewDidLoad()
   self.adaptConstraintsToDevice()
}

func adaptConstraintsToDevice()
{
   if deviceIsIPad // check link above that code sample to check whether the app is running on an iPad or not
   widthConstraint.constant = 100.5 // put your width value here
}

這可以通過大小類來完成。 正如我發布的一些屏幕截圖

寬度不限高度的任意圖像

在“第一張圖片”中,我拍攝了一個具有固定(高度+寬度)約束,頂部間距和水平中心的UIImageView。

第二張圖片

在Second Image中,選擇約束寬度/高度,然后從左側菜單中單擊(+)圖標,然后添加相應的尺寸類別。對於ipad(常規寬度,高度-任意)[根據要求選擇尺寸類別],為其添加寬度和高度值。

輸出圖像

有關尺寸等級和尺寸等級設計的更多信息

希望這會幫助你。 謝謝

暫無
暫無

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

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