Вы можете попробовать Синглтонный подход
Например, у вас есть UIImageView в качестве подпредставления в TextureView
Создайте класс, например, object.h и объявите подпредставление, с которым вы хотите взаимодействовать, E.g
UIImageView *DisplayPicture
UIView *View;
Как только это будет сделано. Вы можете установить теги для каждого из двух видов
TextureView.tag=0;
Objectview.tag=1;
Чем использовать этот метод для получения Touch on the View и затем Subviews
- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [[event allTouches] anyObject];
CGPoint location = [touch locationInView:touch.view];
if (touch.view.tag > 0) {
NSLog(@"%d",[touch.view.subviews count]);
//Get Reference for Texture view
object.View=Touch.view;
//the index will the position at which u added the Subview(UIImageView) e.g If its the first time you addsubview and index of the subview will be O.
object.DipslayPicture=[touch.view.subviews objectAtIndex:0];
}else{
//Similar for ObjectView
}
NSLog(@"tag=%@", [NSString stringWithFormat:@"%i", touch.view.tag]);
i=touch.view.tag;
}
Чем вы можете использовать объект так, как вам нравится, например, SetImage
[object.DisplayPicture setImage:@"happiness.png"];
У меня это сработало :) Надеюсь, это кому-нибудь поможет:)