내 앱에서 마스터 - 세부 탐색을 사용합니다.
탐색 스택의 페이지를 눌러 뒤로 버튼 기능을 사용합니다.
ToolbarItems (보조 메뉴)가있는 페이지를 푸시하면 Android에서는 문제가 없지만 iOS에서는 메뉴 항목이 두 배로 늘어납니다.
동일한 페이지로 이동하면 (푸시하지 않음) iOS (두 번째 메뉴가 예상대로 표시됨)에 문제가 없습니다.Xamarin Forms MasterDetailPage - iOS에서 두 번째로 그려진 보조 메뉴
내가 의미하는 바를 표시하기 위해 공식 MasterDetail 샘플 (https://github.com/xamarin/xamarin-forms-samples/tree/master/Navigation/MasterDetailPage)을 사용했습니다 (solution zip file 참조).
iOS 장치에서 컴파일하여 시작하고 첫 페이지의 버튼을 눌러 하위 페이지를 열면 중복 된 메뉴 항목 (실제로 두 번 그려지는 항목)이 표시되어 보조 메뉴 항목이 두 줄 단지 하나 대신 표시됩니다.
두 행이 동일하며 두 행 (및 해당 메뉴 항목)이 두드 리면 반응합니다.
햄버거 메뉴를 통해 미리 알림 페이지를 선택하면 페이지가 탐색 스택에 푸시되지 않고 전환되기 때문에 보조 메뉴가 정상적으로 작동합니다 (iOS에서도).
일부 흥미로운 부분 :
ContactsPage.xaml.cs :
SwitchToDetailPageAndPushOnNavStack()
ReminderPage.xaml :
<ContentPage.ToolbarItems> <ToolbarItem Text="Do something" Clicked="OnDoSomethingClicked" Order="Secondary" /> </ContentPage.ToolbarItems>
iOS에서 이상한 효과를 제거하기 위해 내가 무엇을 할 수 있는가?
감사합니다. 작동합니다. NavigationPage입니다.내 코드의 SetHasNavigationBar (newPage, false) 호출은 다음과 같은 주석을 가지고 있습니다 : '// iOS : 내비게이션 바를 숨기고 동시에 여러 행의 뒤로 및 햄버거 탐색을 피하십시오 ' 그래서, 과거의 어느 순간 필요한 것이었지만 이제는 해로운 것처럼 보입니다. 자, 한 번 더 배웠습니다 ... – HeliG