检查titleLabel
的{{1}} text
是否过长以至于实际超出按钮大小的最佳方法是什么?防止下面的截图中的情况?我习惯使用UIButton
执行此操作并设置属性UILabel
和minimumScaleFactor
,但是当我尝试使用我的按钮执行此操作时,它似乎没有任何效果:
adjustsFontSizeToFitWidth
答案 0 :(得分:1)
您可以在NSString中使用sizeWithAttributes:方法,如此
NSString *buttonString = @"some string"; // the button's string
CGSize buttonStringSize = [buttonString sizeWithAttributes:@{NSFontAttributeName : [UIFont fontWithName:<button's font family name> size:<the size of the font>]}];
if (buttonStringSize.width == button.bounds.size.witdh){
// the text of the button is too long for the button's width, do somthing
}
答案 1 :(得分:0)
查看sizetofit()方法。
self.button.frame = //在此处设置框架
self.button.sizetofit()
self.button.frame = CGRect(x:self.button.frame.origin.x,y:self.button.frame.origin.y,width:self.button.frame.width,height:yourStandardHeightVariable)//设置在这里再次构建,这部分是为了确保它不会扩展太多
免责声明:此代码未经过IDE测试