在导航栏中更改UIImageView的帧大小不起作用

问题描述 投票:1回答:1

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

这是我的代码:

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)线甚至没有工作。

还没有找到任何有用的解决方案。

ios swift uiimageview uinavigationbar swift4
1个回答
1
投票

UIImageView位于UINavigation Bar标题视图之上。在您的情况下,您不会更改导航栏标题视图的框架。使用自定义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
© www.soinside.com 2019 - 2024. All rights reserved.