0

我正在尝试从我的子 ViewController 获取图像并将其上传到我的服务器。这是我的图像代码。

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

NSData *imageData =UIImageJPEGRepresentation(storyImage, 0.8);

我在我的 h 文件中导入 StoryTableViewController,它是我的子 ViewController。StoryTableViewController 是一个嵌入的 segue。提前感谢您能给我的任何答案。

4

1 回答 1

3

答案是不要那样做。这打破了视图控制器的封装。在像您这样的情况下,它也很简单。

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

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

或者,您可以将 UIImage 属性添加到 StoryTableViewController 并在初始化时设置该属性。

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

请注意,对于在 nib 中调用的视图控制器(对于视图控制器来说不常见,但并非闻所未闻),它们将使用 initWithCoder 创建,这是您应该始终调用对象的指定初始化程序的规则的一个例外。

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

于 2013-10-17T04:02:09.700 回答