Мой код работает, но мне пришлось создать класс для UIView
. Это немного неудобно, потому что мне тоже нужно взаимодействовать с ViewController.
Кстати, я пробовал [self setNeedsDisplay]
на ViewDidLoad
файла подкласса UIViewController
, но это не сработало.
Вот код, который работает на UIView
подклассе, но не вызывается на UIViewController
:
- (void)drawRect:(CGRect)rect
{
UIColor *currentColor = [UIColor redColor];
CGContextRef context = UIGraphicsGetCurrentContext();
someNum = 1;
CGContextBeginPath(context);
CGContextMoveToPoint(context, 30, 40);
[self addDotImageX:30 andY:40];
CGContextSetLineWidth(context, 2);
CGContextSetStrokeColorWithColor(context, currentColor.CGColor);
CGContextStrokePath(context);
}
Есть идеи, что попробовать? Кстати, это приложение TabBar. Я знаю, что они могут как-то блокировать вызовы на drawRect
.
Вкладки, созданные программно, а не через перо. Например:
NSMutableArray *listOfViewControllers = [[NSMutableArray alloc] init];
UIViewController *vc;
vc = [[Education alloc] init];
vc.title = @"Education";
[listOfViewControllers addObject:vc];
vc.tabBarItem.image = [UIImage imageNamed:@"info.png"];
[vc release];
Буду признателен за любые идеи. Я просматривал ответы на этом сайте, связанные с тем, что setNeedsDisplay
не звонил drawRect
, и не нашел ответа для моего конкретного случая.
Спасибо.