我正在为基于视图的应用程序编译iPhoneOS 4.0模拟器(调试),Xcode 3.2.3。iPhone UIView中心属性返回坏值
我有一个UIImageView,imgView,其中心我想坐标。我得到他们这样的:
CGPoint imgviewcoords=[imgView center];
这不会产生任何编译时错误,但是当我的NSLog坐标如下:
NSLog(@"x: %i, y:%i", imgviewcoords.x, imgviewcoords.y);
我得到这样的输出:
x: 0, y:108762
它显示0为imgView的x坐标(我知道这是不正确的,因为imgView接近界面生成器上的屏幕的中上部)和一些巨大的不可能的数字,这是超越了iP的边界磨砂的y坐标屏幕(上面的输出中的y坐标可能不完全正确,但它是这样一个巨大的数字)。每次我都会得到相同的输出。该imgView正确链接到其文件的所有者出口,我甚至可以用
[imgview setImage:[UIImage imageNamed:@"./blahblah.png"]];
我似乎无法正确地获得其圆心坐标改变自己的形象。 我也试着
CGPoint viewcoords=[[imgView frame] origin];
并且如上所述,让我同样的错误坐标imgviewcoords。 这发生在我的应用程序的主UIView中的每一个控件上,除了每个控件的y坐标略有不同之外。 我在做什么错?
@Vladimir:感谢您提出更改NSLog格式说明符的建议。但是,我认为这不是问题的产物。我认为这是不工作的[imgView中心]调用。我正在使用从[imgView Center]返回的CGPoint来设置另一个UIImageView的中心,并且UIImageView只是移动到屏幕的左上角,而不是移动到imgView的中心。所以我猜测这是返回一组错误坐标的[imgView中心]调用。
好。我终于明白了。当我回到家时,我改变了格式说明符,并且确实给了我正确的坐标。谢谢! – 2011-02-25 14:08:04