[英]How to Use Image as title on large Navigation Bar?
好了,您已經可以將圖像放置在欄中了,因此現在只需調整視圖大小即可使其適合所需位置。
通過調整UIImage
的框架大小來執行此操作,因為僅調整UIImageView
大小在導航欄中不起作用(請參見此處 )。
編輯:經過一些試驗,我設法做你想要的。 這有點駭人聽聞,您可能需要自己找出正確的尺寸值,但我設法實現了以下觀點:
這是通過添加一個名為“ container”的UIView
作為titleView
來完成的,該UIView
然后包含一個UIImageView
。 雖然“容器”主要限於工具欄的“頂部”部分,但現在包含的UIImageView
可以在導航欄中自由移動。 您可以看到這有點駭人聽聞:
在此圖像中,您可以看到容器UIView
具有黑色背景色。 它不能超過titleView
的特定大小。 檢查視圖層次結構將顯示徽標的位置:
這是通過以下代碼實現的:
let logo = UIImage(named: "logo")
let container = UIView(frame: CGRect(x: 0, y: 0, width: 182, height: 132))
container.backgroundColor = UIColor.clear
let imageView = UIImageView(frame: CGRect(x: -132, y: 2, width: 182, height: 132))
imageView.contentMode = .scaleAspectFit
imageView.image = logo
container.addSubview(imageView)
self.navigationItem.titleView = container
正如我所說,這是駭人聽聞的,當然不是Apple想要的。 此解決方案可能無法在將來的iOS版本中使用。
您還可以將container
width
和height
設置為0
然后從那里進行實驗。 所有這些都是通過反復試驗手動找到正確的幀值。
我正在嘗試用圖片替換“所有收件箱”
好吧,你不能。 大標題是標題;大標題是標題。 這是文字。 它不能是圖像。 標題視圖可以是圖像,但它位於導航欄的中心。 您顯示的屏幕截圖正確; 這就是它的外觀。 結束。 停止嘗試濫用框架。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.