2016-11-12 8 views
2

iPhone 6의 화면 크기 (1136x750 픽셀, 326ppi)를 기준으로 작업합니다. 나는 디지털 크기가 아닌 버튼의 실제 크기에 대해 (어떤 이유로) 더 우려하고 있습니다.너비가 44 픽셀은 모든 장치에서 동일한 물리적 크기와 같습니까?

iPhone 6의 너비가 44 픽셀이고 실제 너비가 0.2 인치 인 버튼의 iPhone 6 Plus 크기가 401ppi 인 경우,

그렇지 않은 경우 Apple의 가이드 라인을 위반하지 않았습니까? 그들은 원래 44 픽셀을 최소 너비로 테스트했지만, 더 큰 ppi로 동일한 너비가 물리적으로 감소합니다.

어떻게 조정 했습니까?

편집 : 나는 바보가되어 모든 것이 분명하다고 느낍니다.

EDIT 2 : 내 원래 우려가 화면 전체 아이폰 6

T 개의 = 375.0/44.0 = 8 버튼을 가질 수 있었다.

아이폰 6 플러스

T '물리적 인 작은 각 버튼 = 540.0/44.0 = 12 개 개의 버튼을 가질 수 있지만

.

해결 방법은 iPhone 6 Plus의 조정 된 너비를 알아내는 것입니다.이 너비는 w = 44.0 px * 401 ppi/326 ppi = 54.0 픽셀입니다.

따라서 iPhone 6 Plus의 각 버튼의 너비는 54 픽셀이어야 물리적 크기가 같아야합니다.

내가 맞습니까?

답변

2

당신은 수학에 대해 옳았습니다. iOS의 포인트는 실제 크기와 아무 관련이 없습니다.

physicalSize = points * scale/ppi 

5.5 " 44 * 4백1분의 3 ≈ 0.33 인치

4.7" 44 * 삼백이십육분의이 ≈ 0.27 인치

그래서 당신이 필요로하는 동일한 물리적 크기를 보장하기 위해 어쨌든 모범 사례가 아닌 각 장치에 대해 수동으로 계산할 수 있습니다. 위의 공식에서

이 얻을 :

points = physicalSize * ppi/scale 

스위프트 기능 :

func points(fromInches inches: CGFloat) -> CGFloat { 
    return inches * ppi/UIScreen.main.scale 
} 

var ppi: CGFloat {  
    //return device ppi 
} 

확인 프로그램 PPI보기에 대한 this 질문 :

편집 :

나는 물리적 인 화면 크기가 아니라 포인트의 관점에서 생각하는 것이 좋습니다.

+0

Apple이 자체 지침을 위반하기 때문에 이것이 사실 인 것은 의심 스럽습니다. – Vulkan

+0

당신은 정확히 무엇을 의심합니까? – alexburtnik

+0

원래 iPhone의 44 포인트 너비는 최신 iPhone에서 실제 크기보다 작을 수 없습니다. 그들은 동일한 물리적 크기를 가져야합니다. Apple은 특정 물리적 크기에 대한 연구를 최소로했으며 원래의 3.5 인치 iPhone에서 163ppi로 44 픽셀이 발생했습니다. 따라서 물리적 크기를 유지하려면 모든 장치의 크기를 조정해야합니다. – Vulkan