portrait
오리엔테이션에 하나의보기를 표시하고 landscape mode
에 완전히 다른보기 (예 : stocks app on iPhone
)를 표시해야하는 응용 프로그램을 만들고 있습니다. 예를 들어 내가 날씨 앱을 만든 경우 초상화에서 현재 날씨를 표시하고 가로보기에 해당 날씨의 그래프를 표시하려고합니다. 어떻게하면 이것을 할 수 있겠습니까? 다른 storyboard
을 만들고 크기 클래스를 변경해야합니까?다른 방향으로보기 변경하는 방법
답변
적응 레이아웃이라고합니다. Ray Wenderlich에 대한 훌륭한 자습서를 확인하십시오. https://www.raywenderlich.com/113768/adaptive-layout-tutorial-in-ios-9-getting-started
적응 형 레이아웃은 반드시 그것을자를 필요는 없습니다. 내 응용 프로그램은 비슷한 것을 필요로합니다. 그리고 AutoLayout을 사용하는 iPad에서는 크기 클래스를 사용하는 경우 단서가 없습니다. 수퍼 뷰 너비와 높이를 측정해야합니다.
Apple이 WWDC 2016 ("Making Apps Adaptive, Part 2")에서 한 일을했을 때 나는 매우 기뻤습니다. 이 할 수있는 키 일
override func viewWillLayoutSubviews() {
super.viewDidLayoutSubviews()
if self.bounds.width = self.bounds.height {
// view is in landscape mode
} else {
// view is in portrait mode
}
}
: 그들은 함께 (가까운 반면, 그것을 100 %를 잘라하지 않습니다 IB) 코드로 떨어졌다. 거기에서 그것은 당신의 필요에 달려 있습니다. 내 요구 사항은 매우 단순 했으므로 일부보기는 가로보기가 아닌 이미지보기 아래가 아닌 오른쪽으로 이동했습니다. Apple의 Stock app은 AutoLayout으로 쉽게 할 수있는 일들을 빨간색으로 설정하는 것처럼 보입니다.
방향이 변경 될 때 화면 주위에서 구속 조건을 변경하거나 객체를 이동하려고하지 않습니다. 기본적으로 뷰를 완전히 변경하는 것은 무엇입니까? 날씨 응용 프로그램을 만들고 있다고 가정 해 봅시다. 세로 방향으로 현재 날씨를 표시하고 가로로 그래프를 표시하려고합니다. 어떻게하면 좋을까요? @dfd – fellowProgrammer
나는 당신을 오해하고 있습니다. 지금 내 눈에는 여전히 같은 개념입니다. "보기를 완전히 변경하는"은 현재보기를 숨기고 숨겨진보기를 "숨김"을 포함합니다.이보기는 하위보기를 움직이거나 두 개의보기 (및 제어기) 사이에서 구분하는 것을 권장하지 않습니다. – dfd
좋아요, 한 번 더 질문합니다. UIView를 사용하여 화면의 크기를 지정하고 (프로그래밍 방식으로) 내 레이블을 넣은 다음 해당보기를 숨기고 다른보기를 표시합니다. @dfd – fellowProgrammer
- 1. 한 방향으로보기 크기 조정
- 2. 다른 지점에서 변경하는 방법
- 3. 다른 데이터베이스에서 변경하는 방법
- 4. 어떤 방향으로보기 센터를 넣을 수 있습니까?
- 5. 다른 클래스의 iVar를 변경하는 방법
- 6. 다른 개체의 이미지를 변경하는 방법?
- 7. xml을 다른 XML로 변경하는 방법
- 8. 다른 클래스에서 uilabel을 변경하는 방법
- 9. 다른 활동에서 TextSize를 변경하는 방법
- 10. 다른 셀을 변경하는 수식
- 11. 다른 옵션에서 선택 옵션을 변경하는 방법
- 12. iframe src를 다른 페이지에서 변경하는 방법
- 13. NSOutlineViewDataSource를 변경하는 방법 다른 항목을 새로 고침
- 14. 다른 클래스 textview에서 글꼴을 변경하는 방법
- 15. 다른 div의 div 높이를 동적으로 변경하는 방법
- 16. 텍스트를 한 화면에서 다른 화면으로 변경하는 방법
- 17. 다른 XML에서 ImageView 소스를 변경하는 방법?
- 18. JQuery - NaN을 다른 것으로 변경하는 방법
- 19. 다른 프레임에서 setIndeterminate jProgressbar를 변경하는 방법
- 20. 다른 창에서 탭을 변경하는 방법 티타늄
- 21. 다른 활동 (Android)에서 라벨을 변경하는 방법
- 22. event.keyCode를 catch하고 다른 keyCode로 변경하는 방법?
- 23. 다른 프로젝트에서 wpf 사용자 컨텐트를 변경하는 방법
- 24. 프로그래밍 방식으로 양식을 변경하는 다른 방법
- 25. 다른 클래스의 레이블 텍스트를 변경하는 방법 (C#)
- 26. 다른 활동에서 미디어 플레이어를 변경하는 방법
- 27. 다른 창 해상도로 대화 상자를 변경하는 방법
- 28. Visual Studio의 다른 버전간에 아이콘을 변경하는 방법
- 29. 다른 모드에서 vim 커서 모양을 변경하는 방법
- 30. 다른 프로세스의 메모리 공간에서 값을 변경하는 방법
가능한 복제본 : http://stackoverflow.com/a/27643160/3400991 –
[스위프트 iOS에서 기기 방향 설정] (http://stackoverflow.com/questions/25651969/setting-device-orientation- in-swift-ios) – Vinodh