【问题标题】:I'm wondering why it takes two click of the button to complete this UIImageView Code?我想知道为什么需要两次单击按钮才能完成此 UIImageView 代码?
【发布时间】:2012-12-02 21:12:53
【问题描述】:

供参考:

@interface rjhccViewController : UIViewController{

int myInt;

IBOutlet UIImageView *testcontainer;
    IBOutlet UILabel *heightS;
    IBOutlet UILabel *widthS;
}

-(IBAction) img1;
-(IBAction) img2;

@end

-(IBAction)img1{

UIImage *img = [UIImage imageNamed:@"p.jpeg"];
[testcontainer setImage:img];
[testcontainer setFrame:CGRectMake(0,0,50,50)];
int myInt = (int) img.size.height;
NSString *imgheight = [NSString stringWithFormat:@"%i",[[NSNumber numberWithFloat:img.size.height] intValue]];
heightS.text = imgheight;
}

所以我把它附加到一个按钮上。当我单击按钮时,图像会显示并报告高度,但容器不会改变大小。当我再次单击该按钮时,它会转到正确的 CGRectMake...不知道为什么?

罗伯

【问题讨论】:

  • testcontainer 是 UIImageView 吗?
  • 是的...我已经在 Objective-C 和 Cocoa 领域待了 2 天了。对这个来说相当新。

标签: xcode cocoa-touch uiimageview


【解决方案1】:

如果在将最后一个设置为 UIImageView 的 image 属性后,需要将 UIImageView 的大小设置为与图像相同,请尝试以下代码:

UIImage *img = [UIImage imageNamed:@"p.jpeg"];
[testcontainer setImage:img];
[testcontainer sizeToFit];

【讨论】:

  • 我对此有点困惑。我要做的是将图像加载到 UIImageView 中,然后调整 UIImageView 的大小并将其放置在舞台上的某个位置,然后单击按钮。它会加载图像,但会忽略 UIImageView 的大小调整,直到单击第二个按钮。
  • 这也是奇怪的事情。如果我在失败的方法中留下codeheightS.text = imgheight;code。如果我删除它是有效的。我很困惑。
  • 您是如何使用我的方法编写 IBAction 代码的?给我看代码。如果您想打印出图像的大小,请尝试以下代码:heightS.text = NSStringFromCGSize(img.size);
  • 抱歉回复晚了...没有骰子...当我再次写入标签和/或文本区域时,它不会让 UIImageView 的大小调整运行。
猜你喜欢
  • 2019-05-30
  • 1970-01-01
  • 2018-06-29
  • 1970-01-01
  • 2013-01-10
  • 1970-01-01
  • 2018-02-01
  • 2015-10-27
  • 2011-03-28
相关资源
最近更新 更多