2012-03-10 40 views
21

Tôi đang tìm cách đưa hình ảnh chất lượng hình ảnh võng mạc (điên!) Vào ứng dụng của tôi cho lần ra mắt iPad mới trên Martch thứ 16. Tuy nhiên tôi không thể tìm thấy hậu tố chính xác cho tên tệp của tôi ở bất kỳ đâu trong tài liệu!Màn hình Retina iPad Màn hình Suffix

Tôi sử dụng hậu tố @ 2x cho màn hình hiển thị võng mạc iPhone và iPod. Nếu bất cứ ai khác biết nó là gì/sẽ được cho iPad và, thậm chí nhiều hơn, có thể chỉ cho tôi một liên kết đến các tài liệu chính thức về điều này tôi thực sự sẽ đánh giá cao nó.

Cảm ơn! :-D

EXTRA:

nghĩ rằng tôi muốn chỉ để lại một chút mã tôi đã bắt đầu sử dụng để sử dụng iPhone của tôi @ hình ảnh 2x cho những người thân iPad không võng mạc (như hầu hết của tôi @ 2x ~ iphone và ~ ipad hình ảnh giống nhau và trùng lặp chỉ là một sự lãng phí không gian).

+ (UIImage*)imageNamedSmart:(NSString*)name 
{ 
    UIImage *returnImage = [UIImage imageNamed:[NSString stringWithFormat:@"%@", name]]; 

    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
    { 
     if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)] && [[UIScreen mainScreen] scale] == 2) 
     { 
      // iPad Scale 2 i.e. 3rd Gen iPad 
     } 
     else 
     { 
      // iPad Scale 1 i.e. 1st and 2nd Gen iPad 
      return [UIImage imageNamed:[NSString stringWithFormat:@"%@@2x", name]]; 
     } 
    } 
    return returnImage; 
} 

Điều này có nghĩa thay vì gọi:
[UIImage imageNamed:@"imageName"]

Bạn gọi:
[self imageNamedSmart:@"imageName"]

Hope trợ giúp này người hơn một chút. :-D

(tôi thấy ý tưởng này bằng cách Goggling nhưng tôi không thể tìm thấy trang web ban đầu để liên kết, vì vậy cảm ơn bạn bất cứ ai bạn là.)

+0

Gợi ý: 'imageNamed:' hiện tất cả công việc cho bạn. Nó biết về tất cả 4 độ phân giải và tiền tố. ;-) –

+0

Vâng, nhưng bạn vẫn phải đặt gấp đôi các tệp hình ảnh trong, mỗi tệp có tên riêng. Bằng cách này, điều đó có nghĩa là bạn có thể sử dụng [email protected] cho tên ~ ipad.png chỉ với một hình ảnh và mã hoạt động để sử dụng. Và khi tôi phát hiện ra khi bạn có một ứng dụng toàn cầu với iPhone và iPad võng mạc, nó được lớn, nhanh chóng. :-D – Baza207

+0

Thật vậy, đây có lẽ là nhược điểm lớn nhất của các ứng dụng phổ dụng: kích thước lớn hơn. –

Trả lời

38

Bạn sẽ phải nối thêm @2x~ipad với tên của hình ảnh của bạn để hỗ trợ đồ họa võng mạc.

+0

Chúc mừng @thvanarkel Tôi đã tìm thấy từ các hình ảnh Biểu tượng, nhưng bạn có biết nó nói nó ở đâu trong tài liệu không? – Baza207

+0

Chỉ tìm thấy điều này trong tài liệu. Chúc mừng một lần nữa thvanarkel. :-D https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/LoadingResources/ImageSoundResources/ImageSoundResources.html – Baza207

+0

@ 2x ~ ipad sẽ làm cho nó nhắm mục tiêu iPad chỉ mặc dù, nếu bạn muốn hỗ trợ Ví dụ về iPhone và iPad đối với các biểu tượng, bạn chỉ có thể đi cho @ 2x anyway. – alex

0

Nếu cả hình ảnh võng mạc iPhone và iPad có cùng kích thước, thì chỉ sử dụng một hình ảnh có hậu tố @ 2x. Trong trường hợp này, ngay cả iPad võng mạc cũng sử dụng hình ảnh này.

Nếu hình ảnh võng mạc iPhone và iPad không có cùng kích thước, hãy sử dụng hình ảnh có hậu tố @ 2x cho iPhone và một hình ảnh khác có hậu tố @ 2x ~ ipad cho iPad. Ví dụ: hình ảnh khởi chạy có kích thước khác nhau, vì vậy bạn có thể cần [email protected][email protected]~ipad.png.

+0

Bạn có chắc chắn 100? Tôi hỏi vì tôi chỉ có một ứng dụng 'võng mạc sẵn sàng' của iPad trên App Store (hình ảnh võng mạc có hậu tố '@ 2x') và hôm nay tôi thấy rằng một số hình ảnh được tải chính xác và một số không (trên võng mạc iPad). Và có, tất cả các hình ảnh được trình bày/sao chép với cài đặt. Tôi sẽ thử đổi tên chúng thành '@ 2x-ipad' để xem đây có phải là trường hợp không. –

+0

Có thể có câu trả lời khác cho những gì tôi đã viết ở trên - ứng dụng được biên dịch bằng XCode 4.2.1 - mà "không biết" về iPad võng mạc. :) –