2011-02-18 7 views
0

iPhoneOS 4.0 Simulator (Debug), Xcode 3.2.3 용으로보기 기반 응용 프로그램을 컴파일하고 있습니다.잘못된 값을 반환하는 iPhone UIView 가운데 속성

저는 UIImageView, imgView를 가지고 있는데, 센터는 좌표를 원합니다. 이것은 어떤 컴파일 타임 오류를 생성하지 않습니다

CGPoint imgviewcoords=[imgView center]; 

,하지만이 같은 좌표를 NSLog 때 : :이처럼 그들을 얻을

x: 0, y:108762 
:

NSLog(@"x: %i, y:%i", imgviewcoords.x, imgviewcoords.y); 

나는이 출력을 얻을

imgView의 x 좌표가 0입니다 (imgView가 Interface Builder의 화면 가운데 상단에 있기 때문에 올바르지 않다는 것을 알고 있습니다). iP의 경계를 넘은 거대한 불가능한 번호 hone의 y 좌표 화면 (위의 출력에서 ​​y 좌표는 정확하지 않을 수 있지만 그와 같은 거대한 숫자입니다). 나는 매번 똑같은 결과물을 얻는다. imgView가 제대로 그 파일의 소유자 콘센트에 연결하고, 난 그냥 제대로 중심 좌표를 얻이 수없는 것

[imgview setImage:[UIImage imageNamed:@"./blahblah.png"]]; 

사용하여 이미지를 변경할 수 있습니다. 또한

CGPoint viewcoords=[[imgView frame] origin]; 

을 시도하고 상기 한 바와 같이 그 imgviewcoords 나에게 같은 잘못된 좌표를 제공한다. y 좌표가 각 컨트롤마다 약간 다르다는 점을 제외하면 내 앱의 기본 UIView에있는 모든 컨트롤에서 발생합니다. 내가 뭘 잘못하고 있니?

@Vladimir : NSLog 형식 지정자를 변경하는 제안에 감사드립니다. 그러나 나는 그것이 문제가되는 결과라고 생각하지 않는다. 나는 그것이 작동하지 않는 [imgView 센터] 호출이라고 생각합니다. [imgView Center]에서 반환 된 CGPoint를 사용하여 다른 UIImageView의 중심을 설정했으며 UIImageView가 imgView의 중심으로 이동하는 대신 화면의 맨 위 왼쪽으로 단순히 이동합니다. 그래서 그것은 잘못된 좌표를 반환하는 [imgView center] 호출이라고 생각합니다.

답변

4

퍼센트 나는 형식 지정자 정수 값과 CGPoint 구성 요소, CGFloat 유형이 올바른 지정자 (%의 F)를 사용하려고 기대 - 당신이 올바른 출력을 얻을 수 있습니다 :

NSLog(@"x: %f, y:%f", imgviewcoords.x, imgviewcoords.y); 
+0

좋아합니다. 나는 그것을 마침내 얻었다. 제가 집에 왔을 때 형식 지정자를 변경했고, 그것이 확실히 올바른 좌표를주었습니다. 감사! –

+0

답의 왼쪽에있는 체크 박스 개요를 클릭하여 일부 답이 맞음을 나타낼 수 있습니다. 그러면 문제가 해결되었음을 + 응답자에게 좋은 보상이 될 것입니다.) – Vladimir

관련 문제