Как изменить размер и шрифт пользовательского NSTextField?
Я последовал за ответом здесь:
/questions/5832501/prokrutka-nazvaniya-itunes-v-kakao/5832522#5832522
Я был в состоянии использовать код @Dave, и он прекрасно работает.
Единственное, что я не могу найти способ изменить шрифт или размер моего ярлыка.
[self.rssLabel setText:fullString];
[self.rssLabel setSpeed:0.03f];
[[self rssLabel] setFont:[NSFont boldSystemFontOfSize:100]];//NOT WORKING
Ничего не происходит вообще, это как будто это не затронуто.
Самое близкое, что я получил, было, когда я добавил код - (void)drawRect:(NSRect)dirtyRect
- (void)drawRect:(NSRect)dirtyRect {
// Drawing code here.
[[NSColor grayColor] set];//changed the background of the view
NSRectFill(dirtyRect); //not text color
...
}
Я пытался связаться с Дейвом, но пока не могу комментировать, пожалуйста, сообщите.
1 ответ
Решение
Это верно, вам нужно внести изменения в drawRect:(NSRect)dirtyRect
,
Пример:
- (void)drawRect:(NSRect)dirtyRect {
// Drawing code here.
NSFont *font = [NSFont fontWithName:@"Courier" size: 15.0f];
//add more custom stuff, then assign attributes
NSDictionary *attributes = @{ NSFontAttributeName: font};
if (point.x + stringWidth < 0) {
point.x += dirtyRect.size.width;
}
[text drawAtPoint:point withAttributes:attributes];//assign!
if (point.x < 0) {
NSPoint otherPoint = point;
otherPoint.x += dirtyRect.size.width;
[text drawAtPoint:otherPoint withAttributes:attributes];//assign!
}
}