为什么我的 UILabel 没有被更改?我正在使用以下代码,但没有任何反应:
- (void)awakeFromNib {
percentCorrect.adjustsFontSizeToFitWidth;
percentCorrect.numberOfLines = 3;
percentCorrect.minimumFontSize = 100;
}
这是我的实现代码:
- (void) updateScore {
double percentScore = 100.0 * varRight / (varWrong + varRight);
percentCorrect.text = [NSString stringWithFormat:@"%.2f%%", percentScore];
}
- (void)viewDidLoad {
percentCorrect.adjustsFontSizeToFitWidth = YES;
percentCorrect.numberOfLines = 3;
percentCorrect.minimumFontSize = 100;
percentCorrect.text = @"sesd";
}
- (void)correctAns {
numberRight.text = [NSString stringWithFormat:@"%i Correct", varRight];
}
-(void)wrongAns {
numberWrong.text = [NSString stringWithFormat:@"%i Incorrect", varWrong];
}
#pragma mark Reset Methods
- (IBAction)reset:(id)sender; {
NSString *message = @"Are you sure you would like to reset?";
self.wouldYouLikeToReset = [[UIAlertView alloc] initWithTitle:@"Reset?" message:message delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:nil];
[wouldYouLikeToReset addButtonWithTitle:@"Continue"];
[self.wouldYouLikeToReset show];
// Now goes to (void)alertView and see's what is being pressed!
}
- (void)alertView:(UIAlertView *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0)
{
NSLog(@"Cancel button pressed");
}
else
{
varRight = 0;
varWrong = 0;
[self wrongAns];
[self correctAns];
percentCorrect.text = [NSString stringWithFormat:@"0.0%%"];
}
}
#pragma mark Button Action Methods
- (IBAction)right:(id)sender; {
varRight++;
[self correctAns];
[self updateScore];
}
- (IBAction)wrong:(id)sender; {
varWrong++;
[self wrongAns];
[self updateScore];
}
- (IBAction)subOneRight:(id)sender {
if (varRight > 0 ) {
varRight--;
[self correctAns];
[self updateScore];
}
}
- (IBAction)subOneWrong:(id)sender {
if (varWrong > 0) {
varWrong--;
[self wrongAns];
[self updateScore];
}
}
-(IBAction)addHalfCredit:(id)sender;
{
varWrong++;
varRight++;
[self wrongAns];
[self correctAns];
[self updateScore];
}
@end
有什么想法吗? 谢谢
最佳答案
为了使
adjustsFontSizeToFitWidth
设置生效,numberOfLines
属性必须设置为 1。如果 != 1,则不起作用.awakeFromNib
、viewDidLoad
、viewWillAppear
是否被调用?如果文本适合当前字体的当前边界,则
minimumFontSize
属性将不会执行任何操作。您是否设置了标签的字体属性?percentCorrect.font = [UIFont systemFontOfSize:20];
最后,对于最小字体大小来说,
minimumFontSize = 100
是不是有点太大了?
关于iphone - 为什么我的 UILabel 没有被更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/957918/