[Xamarin] 자마린에서 팝업 띄우기
2016. 3. 8. 20:13ㆍMobile
자마린에서는 DisplayAlert, DisplayActionSheet라는 2가지 팝업을 제공합니다. 이 팝업은 자마린이 지원하는 모든 플렛폼에서 적절하게 표현이 됩니다.
Displaying an Alert
자마린에서 팝업을 띄우기 위해서는 Page에서 DisplayAlert를 호출하시면 됩니다. Page 상에서 호출하지 않으면 Exception이 발생합니다.
1 | DisplayAlert( "확인" , "작업이 중단되었습니다." , "확인" ); |
팝업은 모달 팝업처럼 나타납니다. 만약 확인, 취소 등 사용자의 선택을 받기 위해서는 다음과 같이 확인, 취소에 해당하는 버튼 명을 제공하면 됩니다. 사용자의 선택에 따라 bool값을 반환하며, 값을 받기 위해서는 await 키워드를 제공해야 합니다.
1 2 3 4 5 | async void OnAlertYesNoClicked ( object sender, EventArgs e) { var answer = await DisplayAlert ( "확인" , "작업을 중단하시겠습니까?" , "확인" , "취소" ); Debug.WriteLine ( "Answer: " + answer); } |
Guiding Users Through Tasks
UIActionSheet는 iOS에서는 일반적인 UI로써 사용자가 N개의 항목중 하나를 선택할 수 있도록 해줍니다. Xamarin.Forms의 DisplayActionSheet는 이러한 UI를 모든 플렛폼에서 사용할 수 있도록 해줍니다. Android와 Windows 그에 맞는 컨트롤이 나타나게 됩니다.
1 2 3 4 5 | async void OnActionSheetSimpleClicked ( object sender, EventArgs e) { var action = await DisplayActionSheet ( "전송방법을 선택해주세요" , "취소" , null , "이메일" , "트위터" , "페이스북" ); Debug.WriteLine ( "Action: " + action); } |
위에서 세번째 매개변수는 null로 지정되었지만, 이 값을 지정하면 destroy 버튼이 나타납니다. 아래의 예제를 보시면 쉽게 이해하실 수 있습니다.
1 2 3 4 5 | async void OnActionSheetCancelDeleteClicked ( object sender, EventArgs e) { var action = await DisplayActionSheet ( "저장하시겠습니까?" , "취소" , "삭제" , "사진" , "이메일 전송" ); Debug.WriteLine ( "Action: " + action); } |
'Mobile' 카테고리의 다른 글
[Xamarin] Razor Template를 통해 HTML 출력하기 (0) | 2016.03.29 |
---|---|
[Xamarin] WCF-Add/Service Reference가 나타나지 않을 때 (0) | 2016.03.16 |
[Mobile] Android WebView의 문제점 및 대안 (0) | 2015.07.03 |
[Mobile] ViewPort란? (0) | 2015.07.02 |
[Cordova] 기본 meta태그 및 보안설정 (6) | 2015.07.02 |