gpt4 book ai didi

ios - Swift如何使导航中间部分图像和文本彼此相邻

转载 作者:行者123 更新时间:2023-11-29 01:29:19 26 4
gpt4 key购买 nike

我在 stackoverflow 上搜索了很多,但我无法找到解决我问题的方法,我需要在中间部分图像和文本中放置 navigationBar,但显然我只能放置图像或者只是文字

这是我的代码

    let nav = self.navigationController?.navigationBar
nav?.barStyle = UIBarStyle.Default
nav?.tintColor = UIColor.blackColor()
let imageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 20, height: 20))
imageView.contentMode = .ScaleAspectFit
let image = UIImage(named: "icon_heart")
imageView.image = image


self.navigationItem.title = "App name"
self.navigationItem.titleView = imageView

我知道它以这种方式只接受 titleView 图像,但我想不出一些正常的解决方案,也不知道它是否可能。另外,如果那不可能,我该如何制作空白图像并将该图标图像和文本彼此相邻绘制,然后附加该新图像。

编辑:基于 awph 的回答,我添加了这样的代码,它适用于我在标题中始终具有相同字符的情况

    let screenSize: CGRect = UIScreen.mainScreen().bounds

let nav = self.navigationController?.navigationBar
nav?.barStyle = UIBarStyle.Default
nav?.tintColor = UIColor.blackColor()
let imageView = UIImageView(frame: CGRect(x: screenSize.width / 2 - 40, y: 15, width: 20, height: 20))
imageView.contentMode = .ScaleAspectFit
let image = UIImage(named: "icon_heart")
imageView.image = image
nav!.addSubview(imageView)

// label on top of the application that contain word
var label = UILabel(frame: CGRectMake(0, 0, 0, 0))
label.center = CGPointMake(screenSize.width / 2 - 15, 17)
label.textColor = UIColor.blackColor()
label.font = UIFont.systemFontOfSize(14)
label.textAlignment = NSTextAlignment.Center
label.text = "App Name"
label.sizeToFit()
nav!.addSubview(label)

最佳答案

你是对的,正如文档中所说:

// Custom view to use in lieu of a title. May be sized horizontally. Only used when item is topmost on the stack.

您需要做的是创建一个 UIView,添加一个 UImageView(包含您的图像)作为 subview (view.addSubview(imageView)) 然后在上面添加一个 UILabel view.addSubview(label).

关于ios - Swift如何使导航中间部分图像和文本彼此相邻,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33613884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com