2014-06-10 26 views
14

Điều này nghe có vẻ ngớ ngẩn nhưng khi tôi làm việc với kích thước trong Xcode, tổng kích thước khung hình bằng 320 * 568 (chiều rộng * chiều cao). Tôi ổn với điều đó. Nhưng độ phân giải của điện thoại thực sự khác. Iphone 4S là 640 * 960 & 5 và thế hệ tiếp theo là 640 * 1136.Đơn vị đo lường trong Xcode

Tôi biết người cuối cùng là chính xác gấp đôi những gì xcode được sử dụng như các đơn vị, vì vậy câu hỏi của tôi là:

gì đơn vị đo lường không sử dụng XCode? Nếu pixel đó, tại sao không sử dụng kích thước/độ phân giải của điện thoại làm tham chiếu?

+0

Không biết liệu tôi có hiểu đúng vấn đề của bạn hay không, nhưng tôi đã mở rộng câu trả lời để cố gắng giúp bạn tốt hơn. –

Trả lời

15

Nó sử dụng điểm. Trong thiết bị võng mạc, 1 điểm bằng hai pixel. Trong các thiết bị không phải võng mạc, 1 điểm bằng 1 pixel.

Kiểm tra tài liệu của apple về cách vẽ và in trên ios. https://developer.apple.com/library/ios/documentation/2ddrawing/conceptual/drawingprintingios/GraphicsDrawingOverview/GraphicsDrawingOverview.html#//apple_ref/doc/uid/TP40010156-CH14-SW7

Đặc biệt phần "Điểm Versus Pixels"

Sửa Để trả lời iphone 4S vs 5 và câu hỏi thế hệ tiếp theo. Đây là những kích thước màn hình thực tế. Các độ phân giải khác nhau. Màn hình iPhone 4S và 4 là 320x480 điểm hoặc 640x960 pixel. Màn hình iPhone 5, 5C và 5S là 320x568 điểm hoặc 640x1136 pixel. Nếu bạn đang làm việc với xibs, bạn có thể nhìn thấy một trong các kích thước trước đó bởi vì xibs có kích thước được xác định. Đó là nơi các ràng buộc bố trí tự động xuất hiện. Bạn nói trong xib hoặc bảng phân cảnh cách bạn muốn các phần tử được thay đổi kích thước/di chuyển trong màn hình. Bạn có thể đang sử dụng thanh chống và lò xo để quyết định cách di chuyển các mục trong chế độ xem của bạn thay vì bố cục tự động. Được rồi. Ngay cả khi xib/storyboard của bạn có kích thước iphone5, nếu bạn kiểm tra kích thước của màn hình trong chế độ xem của bạnDidAppear khi chạy ứng dụng trên trình mô phỏng hoặc thiết bị iPhone4/4S, bạn sẽ thấy giới hạn lượt xem của bạn có kích thước của thiết bị tương ứng . Tốt hơn nên sử dụng các điểm thay vì pixel vì nó giúp cho nhà phát triển trừu tượng từ các độ phân giải. Bạn không cần phải bận tâm về bao nhiêu điểm ảnh là một điểm, bạn chỉ cần xác định vị trí các mục tại các điểm trên màn hình và để hệ thống xử lý độ phân giải cho bạn.

+0

Tôi đã đọc điểm đó so với Điểm ảnh phụ thuộc vào tỷ lệ PPP (điểm trên mỗi pixel) và 1 điểm tương đương với một pixel chỉ khi sử dụng 72pi (vì một pixel = 1/72 của một điểm). Vì vậy, đó là lý do tại sao tôi đã cai trị câu trả lời này ra ở nơi đầu tiên. Nhưng tôi đoán liên kết của bạn sẽ làm cho mọi thứ rõ ràng hơn cho tôi ;-) –

+0

Đối với điểm so với pixel và điểm của máy in, hãy xem câu trả lời của tôi ở đây http://stackoverflow.com/questions/8687124/printers-points-vs-ios- points/8687316 # 8687316 – jrturton

+0

Để có đầy đủ, đây là một số khác mà tôi đã hỏi về [topic] (https://stackoverflow.com/questions/22138078/what-are-the-units-of-constraint-points-in-autolayout/22138205 # 22138205) –

Các vấn đề liên quan