2009-08-10 9 views
0

ich einen View-Controller auf dem ViewDidLoad mit diesem Code haben ...Klasse Steuerung anderer Ansicht

UIImage *imageU = [[UIImage alloc]initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"transparent" ofType:@"png"]]; 
TouchImageView *transparent = [[TouchImageView alloc] initWithImage:imageU]; 
[transparent setUserInteractionEnabled: YES]; 
[transparent setMultipleTouchEnabled: YES]; 
[self.view addSubview:transparent]; 


imageU = [[UIImage alloc]initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"pointer" ofType:@"png"]]; 
myPointer = [[UIImageView alloc]initWithImage:imageU]; 
[myPointer setUserInteractionEnabled: YES]; 
myPointer.center = CGPointMake(160, 240); 
[self.view addSubview: myPointer]; 

wie Sie sehen transparent Klasse TouchImageView ist, die eine Unterklasse von UIImageView ist.

was ich brauche ist, Ereignisse in TouchImageView-Klasse generiert müssen die Position von "Zeiger" steuern, und dies ist ein Objekt außerhalb des Bereichs der Klasse.

Wie Sie sehen, sind sowohl Transparent als auch Zeiger hierarchisch auf derselben Ebene.

Wie beziehe ich mich auf den Zeiger in der TouchImageView-Klasse?

die Linie Ich versuche, Arbeit zu machen ist

self.superview.myPointer.transform = CGAffineTransformConcat(originalTransform, incrementalTransform); 

aber es sagt MyPointer ist etwas keine Struktur oder Union ...

+0

ennuikiller hat recht. Vergessen Sie auch nicht, das erste "imageU" -Objekt zu veröffentlichen, andernfalls werden Sie es leaken. – kubi

Antwort

1

versuchen, eine Instanz Variable der TouchImageView Klasse machen MyPointer

+0

danke! Das hat geholfen! – SpaceDog

+0

froh, geholfen zu haben! – ennuikiller

Verwandte Themen