ios - 更改导航栏中 UIImageView 的框架大小不起作用

标签 ios swift uiimageview uinavigationbar swift4

出于某种原因,我无法更改导航栏中图像的大小。

这是我的代码:

private func setupNavigationBarItems() {

    let titleImageView = UIImageView(image: UIImage(named: "radius_image"))
    titleImageView.frame = CGRect(x: 0, y: 0, width: 2, height: 2)
    titleImageView.contentMode = .scaleAspectFit
    navigationItem.titleView = titleImageView

}

就好像 titleImageView.frame = CGRect(x: 0, y: 0, width: 2, height: 2) 行甚至没有工作。

没有找到任何有帮助的最新解决方案。

最佳答案

UIImageView 位于 UINavigation Bar 标题 View 之上。在您的情况下,您没有更改导航栏标题 View 的框架。 使用自定义 UIView 并在 UINavigationBar 项目上添加该实例应该可以解决您的问题。

let titleView = UIView.init(frame: CGRect.init(x: 0, y: 0, width: 2, height: 2)) // Add your frames
let titleImageView = UIImageView(image: UIImage(named: "radius_image")) // Give your image name
titleImageView.frame = titleView.bounds
titleView.addSubview(titleImageView)
self.navigationItem.titleView = titleView

关于ios - 更改导航栏中 UIImageView 的框架大小不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54775892/

相关文章:

ios - CALayer 上下文中的镜像和交替输出笔画

ios - 自定义 HeaderView 只显示在最后一个 Section

ios - 当 ViewController 可能实现或不实现协议(protocol)时,在 UIViewController 的 viewDidLoad 上调用协议(protocol)函数

ios - 如何调整图像大小以适应包含的 ImageView

iphone - dequeueReusableCellWithIdentifier forIndexPath

c# - Monotouch (Xamarin.iOS) 内存泄漏

ios - iOS 应用程序中 Objective-C 代码的内存泄漏

ios - 收到通知后,我如何才能在应用程序图标点击时获取有效负载?

ios - ImageView |无法识别的选择器发送到实例 | Xcode 6.4 | iOS 8.4