프로젝트에서 "flipImage.png"및 "[email protected]"파일 은 모두입니다. 에서 - [FlipsideViewController viewDidLoad] 나는 다음과 같은 코드가 있습니다. 정신병 체크 (다른 stackoverflowers 덕분에) 정확하게 망막 또는 아니오를보고합니다. 그러나 두 경우 모두 적재 된 이미지는 작은 것이고 높이로 확인됩니다. 왜 이미지가 자동으로로드되지 않습니까? 좋습니다, 대안을 볼 수는 있지만 가능한 경우 시스템을 사용하고 싶습니다.iOS 6.1 Xcode 4.6 - imageNamed는 @ 2x 버전을 반환하지 않습니다
UIImage* flipimage = [UIImage imageNamed:@"flipImage.png"];
NSLog(@"Image height = %f", flipimage.size.height); // always 416, never 832 :(
// Sanity check.
if ([[UIScreen mainScreen] respondsToSelector:@selector(displayLinkWithTarget:selector:)] &&
([UIScreen mainScreen].scale == 2.0)) {
NSLog(@"Retina");
} else {
NSLog(@"Non-retina");
}
감사합니다. 분명히 이미지의 "크기"를 확인하면 어떤 파일이로드되었는지 정확히 알려주지 않습니다. 사실, 옳은 일이 끝났습니다. 진화하는 모델과 LOGICAL 크기 (픽셀)와 DISPLAY 크기 (점?)의 차이점을 더 연구해야합니다. 이것은 종횡비 투쟁을 연상 시키는데, 나는 한때 서사시적인 말투로 http://www.andrewduncan.ws/aspect에서 분류했다. 후르푸! –
@AndrewDuncan 실제로 UIImage에 이미지가로드되면 크기를 확인하는 것과 관계없이 어쨌든 파일을 인스턴스화하는 데 사용 된 파일을 알 수 없습니다. 내 대답이 도움이 되었다면 확인하십시오. 그 옆에있는 체크 표시는이 질문을 닫을 것입니다. – iwasrobbed
논리적 포인트가 아닌 물리적 포인트의 크기를 알고 싶다면 UIImage에서 참조 된 CGImage에 문의하십시오. UIImage는 CGImage를 둘러싼 포장지입니다. @ 2x 이미지가 2와 같을 경우 대개 망막 디스플레이에서 그의 스케일에 대해 UIImage에 요청할 수 있습니다. – Andrea