Edu*_*Edu 1 objective-c uiimage ios uicollectionview
我将数据从一个控制器传递到另一个控制器.
TemplateController 发送数据的那个是这样的:
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
PreviewController *destViewController = [[PreviewController alloc]init];
destViewController.passFrameLabel = [self.frameImages[indexPath.section] objectAtIndex:indexPath.row];
[self.collectionView deselectItemAtIndexPath:indexPath animated:NO];
[destViewController loadFrame];
[self dismissViewControllerAnimated:YES completion:nil];
}
Run Code Online (Sandbox Code Playgroud)
我的loadFrame方法PreviewController看起来像这样:
UIImageView *frameImageView = [[UIImageView alloc] init];
[self.view addSubview:frameImageView];
self.frameImageView.image = [UIImage imageNamed:self.passFrameLabel];
Run Code Online (Sandbox Code Playgroud)
调试后,self.passFrameLabel包含正确的值但self.frameImageView.image返回nil.我错过了什么?
frameImageView当您的类也具有frameImageView属性时,您似乎正在创建本地对象.您正在添加本地对象UIImageView作为子视图但是分配image给属性(似乎没有初始化).
你应该修改你的代码,
//frameImageView should be a strong property
_frameImageView = [[UIImageView alloc] init];
self.frameImageView.frame = CGRectMake(10,10,50,50); //Add suitable frame
//Now assign image
self.frameImageView.image = [UIImage imageNamed:self.passFrameLabel];
//Add this property as subview
[self.view addSubview:self.frameImageView];
Run Code Online (Sandbox Code Playgroud)
试试看.
| 归档时间: |
|
| 查看次数: |
1145 次 |
| 最近记录: |