Так что я уже давно ищу решение для этого, и я просто не могу понять, что не так. Не использовать объект можно долго, несколько дней. Итак, проблема заключается в следующем:
Итак, я создал это:
PaintingTestViewController.h
PaintingTestViewController.m
PaintingTestviewController.xib
Я тогда создаю
TestDraw.h
TestDraw.m
Дважды щелкните файл XIB, я создаю новое представление, выбираю его, открываю инспектор и устанавливаю класс, указывающий на TestDraw.
Затем я открываю TestDraw.m и удаляю комментарии вокруг - void Drawrect ...
Внутри этого метода я добавил
CGContextRef context = UIGraphicsGetCurrentContext ();
CGContextSetLineWidth(context, 2.0);
CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceRGB();
CGFloat components[] = {0.0, 0.0, 1.0, 1.0};
CGColorRef color = CGColorCreate(colorspace, components);
CGContextSetStrokeColorWithColor(context, color);
CGContextMoveToPoint(context, 0, 0);
CGContextAddLineToPoint(context, 300, 400);
CGContextStrokePath(context);
CGColorSpaceRelease(colorspace);
CGColorRelease(color);
Я проверял это раньше с приложением, которое имеет только представление, а не контроллер представления.
Однако теперь я получаю кучу ошибок
..
..
- [TestDraw drawRect:] в TestDraw.o
"_CGContextStrokePath", на который ссылаются из:
- [TestDraw drawRect:] в TestDraw.o
"_CGContextAddLineToPoint", на который ссылаются из:
- [TestDraw drawRect:] в TestDraw.o
ld: символ (ы) не найдены
Итак, похоже, что «методы» CGContext не распознаются.
Мне нужно использовать viewController и отдельное представление внутри, потому что я использую Unity для основного приложения, и это будет лишь малая часть более крупного приложения. Но из-за соображений производительности (это приложение для рисования) мне нужно использовать собственный код.
Хорошо, я надеюсь, что кто-нибудь сможет мне помочь. Большое вам спасибо!