Итак, на скриншоте ниже отображены UILabel с одним шрифтом и одним и тем-же размером.

Вторая метка выглядит размытой. Вот код, которым я создавал эти UILabel.
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
CGRect screenRect = [[UIScreen mainScreen] applicationFrame];
UILabel *normal = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 30.0, screenRect.size.width, 50.0)];
normal.text = @"Test label1";
normal.textAlignment = UITextAlignmentCenter;
normal.font = [UIFont systemFontOfSize:16.0];
normal.backgroundColor = [UIColor clearColor];
[self.window addSubview:normal];
[normal release];
UILabel *fuzzy = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 60.55, screenRect.size.width, 50.0)];
fuzzy.text = @"Test label2";
fuzzy.textAlignment = UITextAlignmentCenter;
fuzzy.font = [UIFont systemFontOfSize:16.0];
fuzzy.backgroundColor = [UIColor clearColor];
[self.window addSubview:fuzzy];
[fuzzy release];
[self.window makeKeyAndVisible];
return YES;
}
Решилось все просто, оказывается UILabel не дружит с нецелыми координатами (60.5 - в CGRectMake(0.0, 60.5, screenRect.size.width, 50.0))
ммм, спасибо огромное :)
ОтветитьУдалитьВаще спасибо, думал, меня глючит
ОтветитьУдалитьразмытие проявляется только для неретиновских дисплеев. с ретиной можно ставить нецелые координаты
ОтветитьУдалитьsym9
ОтветитьУдалитьна iPad тоже проявляется, хотя никакого противоречия с вашим высказыванием нет