ios - 在 iOS 导航控制器的代码中自定义图像大小
问题描述
这是我用来在导航栏标题中设置图像的代码,
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 100, height: 30))
imageView.contentMode = .scaleAspectFit
let image = UIImage(named: "fullLogo")
imageView.image = image
self.navigationItem.titleView = imageView;
问题是图像看起来有点太大了。如何在代码中调整图像大小?我尝试了许多宽度和高度的组合,但似乎不起作用。
解决方案
根据文件:
自定义标题视图以导航栏为中心,可以调整大小以适应。
这就是您的图像视图发生的情况。解决方案可以是添加imageView
为子视图UIView
并分配UIView
给titleView
属性。
更简单的解决方案可能是设置imageView.contentMode
为,.center
但在这种情况下,您需要确保您的fullLogo
图像实际上是 100x30,如果它大于titleView
iOS 计算的帧,您的图像将覆盖导航栏和视图控制器的视图。
你可以用它来初始化你的UIImageView
或容器UIView
,frame: .zero
因为它的框架将在运行时重新计算。
推荐阅读
- javascript - 如何按时间戳对数组进行排序?
- r - 使用 R 中的条件通过键列交叉连接两个数据帧
- kubernetes - Pod 在不同节点 (EKS) 上时不会相互通信
- javascript - 如何处理从 Input() 接收的 routerLink 和 (click)
- javascript - getElementById() 方法不适用于我的最后一个函数
- sql-server - 在 SQL Server 结果中查询 XML 的问题
- tsql - 动态 sql 被 exec 尝试截断
- php - 将一个数组值作为键值对附加到另一个数组php
- sqlite - 无法在 React Native 项目上安装 SQLite
- python - 如何处理和提取图像中的文本