SF符号在约束下表现得很奇怪[重复]

Posted

技术标签:

【中文标题】SF符号在约束下表现得很奇怪[重复]【英文标题】:SF Symbols acting weird with Constraints [duplicate] 【发布时间】:2021-09-09 08:01:37 【问题描述】:

我基本上有这个SF Symbol:chevron.left,我想得到这个symbol的宽度和高度,我是这样做的:

public func getSize() -> CGSize 
    let size = self.imgView!.size
    return size

这就是我生成 SF 符号的方式:

UIImage(
   systemName: name,
   withConfiguration: UIImage.SymbolConfiguration(textStyle: .title1))?
       .withTintColor(UIColor.TextColor!)
       .withRenderingMode(.alwaysOriginal)

我希望 UIButton 中的 UIImage 的大小等于 UIFont.preferredFont(forTextStyle: .title1).pointSize,但是,SF Symbol 的高度却比我预期的要大。

对于.title1,高度应该是 28 点,而不是 33.3333 点,这是一种奇怪的行为。

--

*我正在使用宽度和高度锚来将按钮的宽度和高度限制为我从 getSize() 收到的大小

*contentMode 等于.scaleAspectFit

*clipToBoundstrue,我也试过false,结果一样。

【问题讨论】:

看看这个答案是否能给你一些见解:***.com/a/63197816/6257435 @DonMag 这就是我遇到的问题......这很糟糕,为什么我要设置 pointSize,而 SF Symbols 无论如何都会改变它。感谢您的帮助:) 是的——SF 符号很棒,但它们有其怪癖(就像很多东西一样)。我会继续将此标记为重复。 【参考方案1】:

根据我帖子的 cmets 中的@DonMag,这实际上是 SF Symbols 的问题。他们已经链接了一个答案(过去来自他们),这是指向该答案的链接:

Custom UIImageView is not circle inside custom UITableViewCell

他们的所有道具。

【讨论】:

以上是关于SF符号在约束下表现得很奇怪[重复]的主要内容,如果未能解决你的问题,请参考以下文章

重复符号链接器错误(C++ 帮助)

Javascript日期表现奇怪[重复]

我的 jQuery 和 CSS 点击切换菜单表现得很奇怪

片段在我的回收站视图中表现得很奇怪

ng-show 和 localStorage 表现奇怪 [重复]

如果它们是奇怪的,如何删除重复的行,否则保留一个