簡體   English   中英

UINavigationBar titleTextAttributes - 在過渡期間不應用

[英]UINavigationBar titleTextAttributes - not applied during transitions

我給了我的導航欄標題一個更大的字體,如下所示:

let navBarTitleTextAttributes = [
    NSAttributedString.Key.font: UIFont.systemFont(ofSize: 24.0, weight: .black)
]
UINavigationBar.appearance().titleTextAttributes = navBarTitleTextAttributes

但是,當在視圖控制器堆棧中向后導航時,前一個視圖控制器上的標題始終默認為正常大小,直到動畫完成,然后它會彈回更大的字體。 這就是我的意思:

在此處輸入圖片說明

這使得使用更大的字體完全不可接受,我想知道如果導航欄標題在過渡期間始終默認為系統字體/大小,為什么我們甚至會給出該選項。 有解決方法嗎? 即讓前一個視圖控制器的標題在過渡期間也以較大的字體出現?

無法根據您提供的信息進行復制。 僅使用您提供的所有信息,這就是我所看到的:

在此處輸入圖片說明

所以我的猜測是你自己正在做一些你沒有告訴我們的事情,在流行動畫開始之前將導航欄的標題文本屬性設置回默認值。

好吧,好消息和壞消息。 好消息是我發現這是由另一行代碼引起的:

UILabel.appearance().font = defaultFont

顯然,這會以某種方式影響導航欄標題字體,僅當在導航堆棧中向后過渡時。

壞消息是 UIAppearance 上沒有appearanceWhenNotContainedIn類方法。 因此,您可以設置 UILabel 或 UINavigationBar 的一般外觀,但不能同時設置兩者。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM