마스터 세부 정보 페이지와 내비게이션 페이지를 사용하는 앱이 있습니다. Android의 경우 burger 메뉴를 통해 계정 페이지로 이동하면 탐색 막대가 예상대로 화면 상단에 머물러있어 탐색 할 수 있습니다. iOS에서는 탐색 막대가 사라 지므로 햄버거 메뉴 아이콘이있는 사용자 정의 막대를 만들었습니다. 누군가가 사용자 정의 탐색 모음의 아이콘을 클릭하면 버거 (burger) 메뉴가 왼쪽에서 스 와이프되기를 원합니다.Xamarin 양식 사용 - 어떻게하면 단추 클릭을 스 와이프 제스처에 연결할 수 있습니까?
버거 아이콘에 제스처 인식기를 연결했지만 호출 된 메소드에 스 와이프 동작을 수행하기 위해 무엇을 넣어야할지 모르겠습니다.
두 번째 페이지에탐색 모음 :
<StackLayout IsVisible="{Binding _isiPhone}" Orientation="Horizontal" BackgroundColor="#008334">
<Image Source="burger.png" HorizontalOptions="StartAndExpand">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="Burger_Clicked"></TapGestureRecognizer>
</Image.GestureRecognizers>
</Image>
</StackLayout>
이벤트 핸들러 :
private void Burger_Clicked(object sender, EventArgs e)
{
}
안드로이드보기 :
안드로이드 햄버거 메뉴보기 :
아이폰 OS 뷰 (사용자 정의 탐색 바) :
아이폰 OS 햄버거 메뉴 :
죄송 자세한 내용은 official docs를 참조하십시오, 내부 페이지는 콘텐츠 페이지가 아닌 탐색 페이지입니다. 계정 페이지에서 IsPresented 속성에 액세스하는 방법을 모르겠습니다. – NinjaFocks
Application.Current.MainPage를 MasterDetailPage로 캐스팅 할 수 있습니다. 그래서 ((MasterDetailPage) Application.Current.MainPage와 같은) .IsPresented = true; 서랍 밖으로 슬라이드를 보여 주어야합니다. 물론이 코드가 실행될 때 MasterDetailPage가 항상 앱의 루트에있을 경우에만이 접근 방식을 사용해야합니다. 프로젝트를 테스트하고 앱 아키텍처에서 가장 깨끗하고 쉬운 솔루션 인 경우 다른 방법으로 참조를 테스트하거나 저장해야 할 수도 있습니다. – irreal