2016-07-04 3 views
1

나는 IOS 개발을 배우기 시작 했으므로 지식은 거의 없습니다.Autolayout IOS에서 상수 대신 IOS

내 레이아웃을 내 앱에 구축하고 있습니다. 모든 기기에서 앱을 실행해야합니다. 나는 어딘가에 제약 조건을 만들 때 항상 일정한 매직 넘버를 사용해서는 안되며 항상 표준 값을 사용해야한다고 읽었다.

나는 그렇게이가하는 '0'의 표준 값을 설정할 때마다 나는 비슷한 간격을

이 친절 할 때 우리가 할 수있는 나에게 알려 승수 값으로 플레이해야 함을 의미 나는 모든 해상도 내 응용 프로그램을 지원하고자 상수 값을 사용할 때와 피할 때 사용해야합니다.

답변

6

대부분의 경우 화면에서보기를 균등하게 배치해야합니다. 이렇게하면보기가 모든 장치에서 비슷해집니다 (예 : 더 큰 화면에서는 작은 화면에서 보는 방법의 크기가 조정 된 것과 동일해야 함).

예 : 3 개의 뷰를 수평으로 동일하게 뷰에 배치해야하는 경우. 버튼의 높이/너비를 매직 넘버로 설정하면 100 픽셀을 말합니다. 3 개의 하위보기는 iPhone5 + 화면에서 말하는 것보다 iPhone6 ​​+ 화면에서 상대적으로 작아 보입니다. 곱셈기를 사용할 때입니다. 슈퍼 뷰의 높이/너비 = 0.2와 비슷합니다.

반면에 어떤 경우에는 마법 번호를 사용해야합니다.

예 : 사용자가 화면 왼쪽에 메뉴 패널을 사용하여 그리는 캔버스를 만듭니다. 메뉴 패널이 왼쪽의 50 픽셀 스트립에 들어 맞습니다. 따라서 메뉴 패널의 크기를 배율로 설정하면 더 큰 화면에서 메뉴 패널이 커집니다. 이것은 그리기 위해 더 큰 화면을 갖는 이점을 다소 무효로 만들 것입니다. 메뉴 패널이 50 픽셀 이하 여야한다는 것을 알고있는 것처럼 마법의 숫자를 사용할 때입니다.

(참고 :.. 직접 매직 넘버를 사용하지 않습니다 당신이 필요로하는 곳 (50)가 그 다음이 상수를 사용할 = k_menu_bar_height 같은 상수를 생성이 훨씬 더 읽을 수와보기의 유지 보수 지점에서 장기적으로 도움)