我正在尝试在UIButton中放置字母'6',以便当程序在小屏幕设备上运行时字体会自动缩小,这样字母6就在所有边的内部。
我发现其他几个线程提供同样问题的解决方案,但由于某种原因它们不适合我。我找到的几个主题是:
我尝试了以下两个代码序列,但没有一个完成任务:
我该怎么办?
self.sixButton.titleLabel!.numberOfLines = 0;
self.sixButton.titleLabel!.adjustsFontSizeToFitWidth = true;
self.sixButton.titleLabel!.lineBreakMode = NSLineBreakMode.ByWordWrapping
self.sixButton.titleLabel!.minimumScaleFactor = 0.5;
self.sixButton.titleLabel!.numberOfLines = 0;
self.sixButton.titleLabel!.adjustsFontSizeToFitWidth = true;
self.sixButton.titleLabel!.numberOfLines = 1;
。我正在使用Swift 2.2和Xcode 7.3.1。
设计时按钮的图片:
运行时按钮的图片:
答案 0 :(得分:1)
我要做的是在连续缩小的字体大小中测量“6”的大小,直到我们得到适合所需边界的大小,并使用该大小。
答案 1 :(得分:0)
我的解决方案是使标签和隐形按钮一起工作。隐形按钮位于标签的顶部。标签中的文本行为比我的经验中的按钮更灵活,更可预测。这可能不是最聪明或最简洁的解决方案,但它工作得很好而且实施起来很轻松。您只需要确保约束使按钮和标签保持对齐。