この drawRect メソッドでカスタム UILabel クラスを使用しています。
- (void)drawTextInRect:(CGRect)rect
{
CGContextRef c = UIGraphicsGetCurrentContext();
CGContextSetLineWidth(c, self.outlineSize);
CGContextSetTextDrawingMode(c, kCGTextStroke);
self.textColor = strokeColor;
[super drawTextInRect:rect];
CGContextSetTextDrawingMode(c, kCGTextFill);
self.textColor = fillColor;
self.shadowOffset = CGSizeMake(0, 0);
[super drawTextInRect:rect];
}
しかし、ピッカービューを介して strokeColor (myText.strokeColor = [self colorWithHex:0xe55f00]) を変更すると、ラベルのストロークの色が変更されるため、正しく機能します。
代わりに、fillColor を編集すると、塗りつぶしとストロークの両方の色が変わります。(myText.fillColor = [self colorWithHex:0x000000])
私は何を間違っていますか??