簡體   English   中英

UIView動畫中的UIButton字體大小問題

[英]UIButton font size issue inside UIView animation

我在UIView內的UIButton遇到一個奇怪的問題。 該視圖最初被約束為0的高度,並且我使用

UIView.animateWithDuration(0.6, delay: 0, options: UIViewAnimationOptions.CurveEaseInOut, animations: {

        heightConstraint!.constant = height
        self.view.layoutIfNeeded()

    }) { (finished) in

    }

這非常好用,動畫視圖的所有內容均按預期顯示,除了放置在其中的任何UIButton之外。

在動畫過程中,按鈕的titleLabel字體大小從0增加到正確的大小 這些按鈕沒有什么特別的。 它們設置為相對於超級視圖定位的系統字體18。 按鈕框是正確的,只是字體大小發生了變化。

我已經嘗試過顯式設置adjustsFontSizeToFitWidthcontentMode但是它們沒有效果。 有趣的是,如果我在視圖中添加一個普通的UILabel ,則效果很好。

有什么建議嗎?

我設法通過在動畫之前將高度顯式設置為非零值來避免該問題:

constraint.constant = 1
self.view.layoutIfNeeded()
self.view.setNeedsUpdateContraints()

// do animation

盡管可以感覺到我一開始就無法正確執行某些操作,但是這可以解決問題。

嘗試使用clipsToBounds = true ,文本隱藏在按鈕內

當height為0或1時,myView為

在此處輸入圖片說明

在設置clipsToBounds = true ,它像這樣

在此處輸入圖片說明

注意 Border = 1和height = 1僅代表此處。 甚至我也遇到了這個奇怪的問題。 但是將邊界設置為true后,文本不會顯示

暫無
暫無

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

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