Xamarin.iOS UIAlertView에 이미지를 함께 표시하기
오늘은 Xamarin.iOS의 경고창(UIAlertView)에 이미지를 함께 띄우는 방법을 공유하겠습니다. iOS 개발 문서를 읽어보고, 구글링을 한참하여 결국 제가 Xamarin.iOS에서 해냈습니다.
핵심은 UIAlertView에 accessaryView로서 UIImageView의 인스턴스를 설정하는 것입니다. 더 간단한 방법 아시면 제게 공유해 주세요!
alertView.SetValueForKey (NSObject.FromObject (imageView),
new NSString ("accessoryView"));
이 방법을 통해 아래와 같은 경고창을 띄우실 수 있습니다.
아래 소스를 한번 보시면, 전반적인 흐름이 이해가 되실 것입니다.
// UIImage 준비, data는 어디선가 왔다고 가정하고
var image = UIImage.LoadFromData (data);
// UIImageView 준비
var imageView = new UIImageView () {
Image = image,
Frame = new CGRect (0, 0,
image.Size.Width,
image.Size.Height)
};
// UIAlertView 준비
UIAlertView alertView = new UIAlertView ("확인",
"이 이미지로 하시겠습니까?",
null,
"취소",
"확인");
// UIAlertView에 UIImageView 장착
alertView.SetValueForKey (NSObject.FromObject (imageView),
new NSString ("accessoryView"));
alertView.Clicked += (object sender, UIButtonEventArgs e) => {
if (e.ButtonIndex == 0) // 취소
return;
// 확인 눌렀을 때 수행할 코드
};
alertView.Show ();
즐코딩하세요!