在另一个视图中显示来自 UIImageView 的照片
Posted
技术标签:
【中文标题】在另一个视图中显示来自 UIImageView 的照片【英文标题】:Display Photo from UIImageView in another view 【发布时间】:2013-10-26 18:22:27 【问题描述】:我有一个类,其中包含 tableView 的信息
@interface Tricks : NSObject
@property(strong, nonatomic) UIImageView *trickPhoto;
@property(strong, nonatomic) NSString *trickName;
@property(nonatomic) BOOL landed;
+(NSMutableArray *)trickList;
@结束
在这个类中,当我点击保存时,它会在 tableview 中创建一个单元格
-(IBAction)saveAction:(id)sender
Tricks *trick = [[Tricks alloc]init];
trick.trickName = self.trickLabel.text;
trick.trickPhoto.image = self.trickPhotoTake.image;
[[Tricks trickList]addObject:trick];
从 tableViewCell 推送的 detailViewController 我想显示技巧和照片的名称,但它只显示名称。 使用我知道的断点,UIImage 属性中有一个名为trickPhoto 的值,但没有显示图片。 感谢您的建议
【问题讨论】:
【参考方案1】:如果你使用 Storyboards,你需要使用:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
any 属性只存在于创建它的类中。如果您在 ViewControllr 中并使用名为 @"image.png" 的图像设置 DetailViewController 的 UIImageView 属性,则 DetailViewController 的该属性仅存在于 ViewController 中。
试试:
- (void)prepareForSegue:(UIStoryboardSegue
*)segue sender:(id)sender
if ([segue.destinationViewController
isKindOfClass:[DetailViewController class]])
viewController =
segue.destinationViewController;
if ([segue.identifier
isEqualToString:@"____enterSegueIdentifier____"])
detailViewController.trickPhoto.image =
[UIImage imageNamed:@"______"];
【讨论】:
detailViewController.trickPhoto.image = trick.trickPhoto.image;图片仅在视图中,我想从那里加载它【参考方案2】:在 detailViewController 中,您可以像这样从另一个 viewController 调用 extern 属性:
extern UIImageView *trickPhoto;
将下面的代码放在导入之后。
@interface detailViewController ()
【讨论】:
您能否详细说明为什么您认为需要extern
?以上是关于在另一个视图中显示来自 UIImageView 的照片的主要内容,如果未能解决你的问题,请参考以下文章
如何将图像设置为在另一个视图控制器中异步获取的 UIImageView?
在另一个视图中滚动 UIScrollView 时更快地滚动它
当我从与移动设备中的图库相同的多个 UIImageView 显示中点击 UIImageView 时,未调用 touchesBegan 方法