2012-12-14 19 views
1

供参考:我想知道为什么需要两次点击按钮来完成这个UIImageView代码?

@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 ...不知道为什么?

罗布

+0

TestContainer是一个'UIImageView'吗? – DrummerB

+0

是的,这是...我已经在Objective-C和Cocoa的土地上2天了,所以相当新的这个 – BostonMacOSX

回答

0

如果您需要设置的UIImageView的大小是一样的图像你已经设置的最后一个试试下面的代码的UIImageView的图像属性后:

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

我对此有点困惑我想要做的是加载图像进入UIImageView,然后调整UIImageView的大小,并将其放置在舞台上的按钮点击位置。它加载图像,但它忽略了UIImageView的大小调整,直到第二次按钮点击。 – BostonMacOSX

+0

这也是奇怪的事情..如果我离开'code'heightS.text = imgheight;'代码'在它失败的方法中,如果我删除它是工程,我很困惑 – BostonMacOSX

+0

你是怎么用我的方法编写IBAction代码的?告诉我代码 如果你想打印出图像的大小,请尝试下面的代码: 'heightS.text = NSStringFromCGSize(img.size);' –

相关问题