2010-09-09 1 views
0

Я создаю UIImage программно в моей функции drawRect моего UIView. Есть ли способ, которым UIViewController, ответственный за этот UIView, получает доступ к этому изображению (или его копии) для манипуляции?UIImage от UIView до UIViewController

Оцените любые указатели и заблаговременно благодарите.

ответ

1

Если ваш UIImage, который вы создаете программно в своем чертеже, сохраняется как свойство в подклассе UIView, тогда UIViewController может получить доступ к изображению.

Очевидно, что если вы используете Interface Builder, вам нужно подключить подкласс UIView к IBOutlet в классе UIViewController для доступа к этому свойству, но я уверен, что вы это уже делаете.

e.g. in the drawrect function 

self.storedImage = [[UIImage alloc] init... ]; 

in the header for the UIView subclass 
UIImage* storedImage; 

@property (nonatomic, retain) UIImage* storedImage; 

неатомической сохранил свойство гарантирует, что вы не протекает UIImages каждый раз, когда функция Жеребьевка прямоугольник называется.

+1

В вашем примере вы вводите утечку памяти с помощью строки ... self.storedImage = [[UIImage alloc] init ...]; As storedImage - свойство сохранения. Вместо этого вы должны иметь ... UIImage * newImage = [[UIImage alloc] init ...]; self.storedImage = newImage; [newImage release]; OR ... self.storedImage = [[[UIImage alloc] init ...] autorelease]; Вы будете удивлены, сколько раз я это вижу! :) –

 Смежные вопросы

  • Нет связанных вопросов^_^