这是我的代码:
- (IBAction) buttonPressed:(id)sender
{
DestinationViewController *destinationViewController = [[self.storyboard instantiateViewControllerWithIdentifier:@"Destination"] autorelease];
destinationViewController.title = @"image property";
destinationViewController.img = [UIImage imageNamed:@"thumbnail"];
[self.navigationController pushViewController:destinationViewController animated:YES];
[destinationViewController release];
}
输出结果为:
2012-07-20 10:43:29.976 jsonimage2[682:f803] 5 - fifth activity -http://i1184.photobucket.com/albums/z328/iElmoTutorials/CrazyEye.png
2012-07-20 10:43:31.878 jsonimage2[682:f803] The button's image is <UIImage: 0x6aa16c0>.
2012-07-20 10:43:33.846 jsonimage2[682:f803] it works
2012-07-20 10:43:33.861 jsonimage2[682:f803] -[ViewController setImg:]: unrecognized selector sent to instance 0x68a8b80
任何帮助?
提前致谢。
答案 0 :(得分:1)
instantiateViewControllerWithIdentifier:
从文档中返回一个__kindof UIViewController *
。
您的代码将其归因于DestinationViewController *
,但实际上它是根据崩溃日志返回的ViewController *
。因此,您可能忘记了在情节提要中正确设置"Destination"
的类。
答案 1 :(得分:0)
设置destinationViewController.img
的行会触发对setImg:
的隐式调用。
我看不到DestinationViewController
的定义,但它显然不包含img
属性的定义。您可以通过为@property
添加适当的img
或通过实施setImg:
和img
方法来实现此目的。
答案 2 :(得分:0)
你应该在@implementation DestinationViewController
之后忘记@synthesize img