2013-01-09 5 views
1

사용자 높이 탐색 막대가 앱에서 사용되는 프로젝트가 있으므로 44px 대신 62px입니다. 보기 컨트롤러 옵션에서 시뮬레이트 된 메트릭 아래의 탐색 모음에 설정된 최상위 막대 특성을 사용할 때 스토리 보드 편집기 (인터페이스 작성기)를 사용하여 내보기를 빌드하고 레이아웃하려고합니다. 이는 기본 44px가 아닌 사용자 정의가됩니다. 높이 navbar (64px) 싶습니다.Xcode InterfaceBuilder 사용자 정의 높이가있는 navbar에 대한 시뮬레이션 된 메트릭

이 방법을 사용하면 모든보기 작업 영역이 다른 크기로 표시되며 초과 할 내용을 계산해야합니다.

시뮬레이션 된 메트릭과 사용자 정의 높이 navbar 하위 클래스를 정상적으로 사용하면서 남은 공간에서 작업해야하는 방식이 있습니까?

답변

4

Xcode에서 시뮬레이션 된 측정 항목을 사용자 정의 값으로 변경할 수 없습니다. 네비게이션 대신 사용자 정의 네비게이션 바를 디자인하고 복사하는 것이 가능하지만 더 이상 시뮬레이션되지 않습니다. 는 또는 당신은 당신이 원하는 값으로 NavigationBar의 값을 설정할 수 있습니다이 파일에서

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/PrivatePlugIns/IDEInterfaceBuilderCocoaTouchIntegration.ideplugin/Contents/Resources 

오픈 CocoaTouchConstraints.plist 로 이동하여 약간의 해킹을 만들 수 있습니다. 당신은 엑스 코드다시 시작해야하고 내비게이션 바는 원하는 높이있을 것이다 저장 한 후

<key>NavigationBar</key> 
    <dict> 
     <key>MaximumSize</key> 
     <string>{10000, 60}</string> 
     <key>MinimumSize</key> 
     <string>{0, 60}</string> 
    </dict> 

: 당신은 60-60 높은 단지 설정의 최대 및 최소 높이 인 탐색 막대를 원하는 그래서 경우.

+0

안녕하세요 lukaswelte, 정말 멋지 네요. 오, 프로젝트 단위로 설정할 수 있다면 더 좋을 것입니다. 팁 주셔서 감사합니다 정말 도움이됩니다. – zanona

+0

예, Apple이 Xcode에서 직접 프로젝트 당 시뮬레이션 된 측정 항목을 직접 설정할 수 있다면 좋을 것입니다. 그러나 프로젝트에서 설정할 수있는 시뮬레이트 된 메트릭에 영향을 미치는 값은 없습니다. 또한 "소스"파일이 아닙니다 .. 사과 사이트에서 기능 요청을 제출할 수도 있지만, 구현할 마지막 물건 중 하나가 될 것입니다 (Apple은 표준 크기를 좋아합니다) – lukaswelte

+0

귀하의 현상금 친구가 있습니다 ;) 다시 한번 감사드립니다. – zanona

0

비슷한 행동을하고 올바른 자동 레이아웃과 제약 조건을 인터페이스 건물에 직접 갖고 싶다면 올바른 측정 항목으로 사용자 정의 navbar 클래스의 간단한보기를 추가하십시오. (탐색 막대가 UIView에서 상속됨에 따라 정상적으로 작동합니다.)보기를 추가하고 사용자 정의 클래스를 설정하며 탐색 막대와보기의 상단 객체 모두에 대한 제약 조건을 추가하기 만하면됩니다.

관련 문제