我尝试使用以下代码来对NSLog UIImage
的维度进行处理,但是我收到的警告是“在类型的对象上找不到属性'theImage'。”我做错了什么?
UIImage *theImage = [UIImage imageNamed:@"my_image.jpg"];
CGRect imageContent = self.theImage.bounds;
CGFloat imageWidth = imageContent.size.width;
CGFloat imageHeight = imageContent.size.height;
NSLog(@"Size of my Image => %f, %f ", imageWidth, imageHeight);
答案 0 :(得分:1)
你应该像这样编码:
UIImage *theImage = [UIImage imageNamed:@"my_image.jpg"];
CGSize imageContent = theImage.size;
CGFloat imageWidth = imageContent.width;
CGFloat imageHeight = imageContent.height;
NSLog(@"Size of my Image => %f, %f ", imageWidth, imageHeight);
答案 1 :(得分:0)
这正是它所说的;您将该代码放入哪个类没有名为theImage
的属性。你的意思可能是:
CGSize imageContent = theImage.size;
CGFloat imageWidth = imageContent.width;
CGFloat imageHeight = imageContent.height;
使用self.
表示法访问该类实例的属性。局部变量是一个单独的概念,因此可以单独访问。实例变量与类的实例具有相同的生命周期。局部变量只有封闭范围的生命周期(在这种情况下是方法)。
此外,根据user3779315,UIImage
有size
但没有bounds
。那是因为它没有origin
。它不是任何布局层次结构的一部分;它是独立的。