我正在尝试从我的子ViewController获取图像并将其上传到我的服务器。这是我的图像代码。
StoryTableViewController *storyTable = [[StoryTableViewController alloc] init];
UIImage *storyImage = storyTable.storyPhotoPreview.image;
NSData *imageData =UIImageJPEGRepresentation(storyImage, 0.8);
我正在我的h文件中导入StoryTableViewController,这是我的子ViewController。 StoryTableViewController是一个嵌入式segue。提前感谢您给我的任何答案。
答案 0 :(得分:3)
答案是不要那样做。这打破了视图控制器的封装。它也很简单,在像你这样的情况下不起作用。
您应该将另一个视图控制器的视图视为私有。
如果您希望能够从另一个视图控制器获取图像,请添加一个获取图像并返回图像的方法。
或者,您可以向StoryTableViewController添加UIImage属性,并在初始时设置该属性。
顺便说一下,你不应该用alloc / init创建一个视图控制器。用于创建视图控制器的指定初始化程序是initWithNibName:bundle:
请注意,对于在nib内部调用的视图控制器(视图控制器不常见,但不是闻所未闻),它们将使用initWithCoder创建,这是规则的一个例外,您应该始终调用对象的指定初始化程序。
如果您正在使用故事板,则应使用instantiateViewControllerWithIdentifier加载视图控制器: