Ios 如何在导航栏标题中调整图像大小
我正在尝试调整图像大小,使其适合导航标题。我给了它高度和重量,但它看起来仍然很大 这是我的代码:Ios 如何在导航栏标题中调整图像大小,ios,swift,uiimageview,uiimage,Ios,Swift,Uiimageview,Uiimage,我正在尝试调整图像大小,使其适合导航标题。我给了它高度和重量,但它看起来仍然很大 这是我的代码: override func viewDidLoad() { super.viewDidLoad() let image = UIImage(named: "rollyiha copyi") let imageview = UIImageView(image: image) imageview.frame.size.width = 58 image
override func viewDidLoad() {
super.viewDidLoad()
let image = UIImage(named: "rollyiha copyi")
let imageview = UIImageView(image: image)
imageview.frame.size.width = 58
imageview.frame.size.height = 33
imageview.frame.origin = CGPoint(x: 2, y: 8)
imageview.sizeToFit()
navcik.titleView = imageview
}
当我手动编辑图片到较小的尺寸时,它会失去分辨率。
如何使用代码使其大小为58:33?我认为您的imageView大小由imageView的
intrinsicContentSize
属性决定
您可以尝试
imageview.invalidateIntrinsicContentSize()
好的,这是对的,还有一个问题,现在图像太偏左了。如何将其从x轴向右移动一点?这仍然不会改变图像视图的大小。只有ScaleSpectFit将使图像适合图像视图而不进行缩放。
func addNavBarImage() {
let navController = navigationController!
let image = UIImage(named: "logo-signIn6.png") // Your logo URL here
let imageView = UIImageView(image: image)
let bannerWidth = navController.navigationBar.frame.size.width
let bannerHeight = navController.navigationBar.frame.size.height
let bannerX = bannerWidth / 2 - (image?.size.width)! / 2
let bannerY = bannerHeight / 2 - (image?.size.height)! / 2
imageView.frame = CGRect(x: bannerX, y: bannerY, width: bannerWidth, height: bannerHeight)
imageView.contentMode = .scaleAspectFit
navigationItem.titleView = imageView
}