2013-10-17 37 views
0

我想从我的子视图控制器获取图像并将其上传到我的服务器。这是我的图片代码。在iOS中,您如何从子ViewController获取图像?

StoryTableViewController *storyTable = [[StoryTableViewController alloc] init]; 
UIImage *storyImage = storyTable.storyPhotoPreview.image; 

NSData *imageData =UIImageJPEGRepresentation(storyImage, 0.8); 

我导入StoryTableViewController是我的子ViewController在我的h文件。 StoryTableViewController是一个嵌入式赛格。预先感谢您提供给我的任何答案。

回答

3

答案是不这样做。这打破了视图控制器的封装。这也仅仅是在你的情况下不起作用。

您应该将另一个视图控制器的视图视为私有视图。

如果您希望能够从另一个视图控制器获取图像,请添加一种获取图像并将其返回的方法。

或者,你可以添加一个UIImage属性到你的StoryTableViewController并在init时设置该属性。

顺便说一句,你不应该创建一个视图控制器与alloc/init。用于创建视图控制器的指定初始化程序是initWithNibName:bundle:

请注意,对于在nib内部调用的视图控制器(对于视图控制器而言并不常见),它们将使用initWithCoder创建,它是一个您应始终调用对象的指定初始值设定项的规则的例外情况。

如果你使用故事板,那么你应该使用加载您instantiateViewControllerWithIdentifier视图控制器:

+0

酷和有用的信息.... –