2013-08-05 72 views
0

我已經創建了一個自定義按鈕類,用於我的xibs,基本上只是一個帶有標籤的陰影的按鈕。但是,標籤中的文本呈鋸齒狀(好像它不是反鋸齒)。這裏是我的代碼的相關部分的類(這是一個非常小的類,從UIButton繼承)。顯示鋸齒文字的標籤

- (id)initWithFrame:(CGRect)frame { 
    self = [super initWithFrame:frame]; 
    if (self) { 
     [self internalInit]; 
    } 
    return self; 
} 

- (id)initWithCoder:(NSCoder *)aDecoder { 
    self = [super initWithCoder:aDecoder]; 
    if (self) { 
     [self internalInit]; 
    } 
    return self; 
} 

- (void)internalInit { 

    self.backgroundColor = [UIColor colorWithRed:22/255.0 green:72/255.0 blue:143/255.0 alpha:1.0]; 
    CGRect frame = self.frame; 
    frame.origin = CGPointMake(floorf(frame.origin.x), floorf(frame.origin.y)); 
    //self.frame = CGRectIntegral(frame); 
    frame = self.titleLabel.frame; 
    frame.origin = CGPointMake(floorf(frame.origin.x), floorf(frame.origin.y)); 
    //self.titleLabel.frame = CGRectIntegral(frame); 
    // Shadow 
    self.layer.shadowOffset = CGSizeMake(0, 1.5); 
    self.layer.shadowColor = [UIColor blackColor].CGColor; 
    self.layer.shadowOpacity = 0.3; 
    self.layer.shouldRasterize = YES; 
    self.layer.shadowPath = [[UIBezierPath bezierPathWithRect:self.bounds] CGPath]; 

    // Corner 
    self.layer.cornerRadius = 5; 
} 

我已經嘗試解決該問題,我已經發現,當該標籤的來源或按鈕被設置在非整數值可能出現這種情況。但是,我檢查了按鈕和像素的絕對值,它們都設置爲整數值。我一直無法弄清楚還有什麼可能會出錯,而且我找不到其他人有過同樣的問題。

回答

1

通常當鋸齒髮生時,這是因爲相同的視圖被繪製多次。你確認這個視圖是否只繪製一次?