ios - 如何在导航栏中设置 backBarButtonItem 标题的样式?
<p><p>我希望能够仅更改导航栏中后退按钮的文本颜色。</p>
<p>作为一种解决方法,我可以通过创建自定义 View 并将其分配给 <code>navigationItem.leftBarButtonItem</code> 来做我想做的事情,但它看起来不太好,我也失去了滑动弹出能力。
<a href="/image/4Ha77.png" rel="noreferrer noopener nofollow"><img src="/image/4Ha77.png" alt="enter image description here"/></a> </p>
<p>以上代码:</p>
<pre><code>let button = UIButton(type: .system)
let originalImage = #imageLiteral(resourceName: "BackButton")
let scaledImage: UIImage = UIImage(cgImage: originalImage.cgImage!, scale: 30, orientation: originalImage.imageOrientation)
button.setImage(scaledImage, for: .normal)
button.setTitle("YourTitle", for: .normal)
button.sizeToFit()
button.setTitleColor(.brown, for: .normal)
button.tintColor = .blue
navigationItem.leftBarButtonItem = UIBarButtonItem(customView: button)
</code></pre>
<p>我还看到一些建议,例如通过 </p> 设置后退按钮的属性
<pre><code>navigationController?.navigationBar.topItem.backBarButtonItem?.setTitleTextAttributes(, for: .normal)
</code></pre>
<p>但这似乎对文本的外观没有任何影响,尽管</p>
<pre><code>print("Attributes: ", navigationController?.navigationBar.topItem?.backBarButtonItem?.titleTextAttributes(for: .normal) ?? "No attributes")
</code></pre>
<p>导致<code>属性:["NSColor": UIExtendedSRGBColorSpace 1 0 0 1]</code>.</p>
<p>我可以设置 <code>tintColor</code> 但这会改变除了标题之外的后退图标的颜色。</p>
<p>那么做我想做的最好的方法是什么?有什么办法吗?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>我不确定我是否理解正确。但试试下面的代码。这将适用于您应用的所有栏按钮项。将此代码放置在应用程序生命周期内仅调用一次的位置。像 <code>application:didFinishLaunchingWithOptions:</code></p>
<pre><code>let attribs =
UIBarButtonItem.appearance().setTitleTextAttributes(attribs, for: .normal)
</code></pre></p>
<p style="font-size: 20px;">关于ios - 如何在导航栏中设置 backBarButtonItem 标题的样式?,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/46431592/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/46431592/
</a>
</p>
页:
[1]