我在名为UIImageView
的文件中声明了IBOutlet UIImageView *character;
(GameViewController.h
),我不确定如何从其他文件CharacterSelectViewController.h
访问此内容。
我得到它之后我需要做的就是设置image
。如何从其他文件访问此UIImageView
?
答案 0 :(得分:0)
首先,您需要获取当前显示的GameViewController
的现有实例。如何从CharacterSelectViewController
执行此操作取决于它们彼此之间的关系,您可能需要设置委托关系/导航视图控制器堆栈以查找正确的实例。
获得实例后,您只需访问该属性:
gameViewController.character.image = ...;
在任何情况下,委托类型关系通常比导航视图控制器层次结构更好。这可以是简单的直接关系,也可以是使用@protocol
的广义关系。
如果GameViewController
将CharacterSelectViewController
作为模式,那么您可以使用
GameViewController *gameViewController = (GameViewController *)self.presentingViewController;
如果GameViewController
将CharacterSelectViewController
推入其导航控制器,则可以使用:
NSArray *viewControllers = self.navigationController.viewControllers;
GameViewController *gameViewController = (GameViewController *) viewControllers[viewControllers.count - 2];