我正在动态生成 UIButton,当我设置没有空格的标题名称时,它会正确显示。 例如:
NSString *myString=[[array valueForKey:@"optionName"] objectAtIndex:i];
NSLog(@"%@",myString); // myString=SampleTitle
[button setTitle:myString forState:UIControlStateNormal];
当我用空格设置名称时,它会自动调整 UIButton 标题。 例如:
NSString *myString=[[array valueForKey:@"optionName"] objectAtIndex:i];
NSLog(@"%@",myString); // myString=SampleTitle Test
[button setTitle:myString forState:UIControlStateNormal];
它的显示是这样的
我怎样才能去掉这个修剪部分?我需要正确显示所有字符。
我的 UIButton 大小是根据标题计算的
[button setTitle:myString forState:UIControlStateNormal];
CGSize stringsize = [@"Prolonged inspiration" sizeWithFont:[UIFont systemFontOfSize:14]];
//or whatever font you're using
[button setFrame:CGRectMake(x,y,stringsize.width+30,stringsize.height+20)];
最佳答案
问题的最可能原因是您计算文本大小时使用的字体可能与按钮的字体不同。根据按钮的字体和按钮的文本进行计算。
CGSize stringsize = [myString sizeWithFont:button.titleLabel.font];
作为旁注,sizeWithFont:
方法在 iOS 7.0 中已被弃用。除非您还支持 iOS 6,否则您应该使用适当的替代方法替换该方法。
关于ios - UIButton 没有显示完整的标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34101431/