public override void ViewDidLoad() { base.ViewDidLoad(); storyboard = UIStoryboard.FromName("Main", null); UserInitials = new UILabel() { TextAlignment = UITextAlignment.Center, Frame = new CGRect(0, 0, UserPicture.Frame.Width, UserPicture.Frame.Height), TextColor = UIColor.White, Font = UIFont.FromDescriptor(UIFont.PreferredTitle1.FontDescriptor, 48f) }; UserPicture.AddSubview(UserInitials); LogOutButton.TouchUpInside += async(x, y) => { if (File.Exists(Constants.Images + Profile.Instance.UserId + ".jpg")) { File.Delete(Constants.Images + Profile.Instance.UserId + ".jpg"); } await RemoteService.LogOut(); ProfileImage = null; ((ProfileViewController)(ParentViewController.ParentViewController)).PresentContainerView(0); RemoteService.NeededProfilePageNum = 0; UIApplication.SharedApplication.UnregisterForRemoteNotifications(); }; ChoosePicture.UserInteractionEnabled = true; UILongPressGestureRecognizer longp = new UILongPressGestureRecognizer(LongPress); ChoosePicture.AddGestureRecognizer(longp); }
private async void SelectPicture() { SelectPictureResult pictureResult = null; if (UseChoosePicture) { var request = new ChoosePictureRequest { MaxPixelDimension = 500 }; pictureResult = await ChoosePicture.ExecuteAsync(request); } else { var request = new TakePictureRequest { MaxPixelDimension = 500, CameraOption = CameraOption.Back }; pictureResult = await TakePicture.ExecuteAsync(request); } if (pictureResult.IsValid()) { Model.Data.Mug = pictureResult.Image; } else { Message = pictureResult.Notification.ToString(); } }
public override async Task <RecognizePersonResult> ExecuteAsync(RecognizePersonContext request) { var retResult = new RecognizePersonResult(); SelectPictureResult pictureResult = null; if (request.UseCamera) { var pictureRequest = new TakePictureRequest { CameraOption = request.CameraOption, MaxPixelDimension = 500 }; pictureResult = await TakePicture.ExecuteAsync(pictureRequest); } else { var choosePictureRequest = new ChoosePictureRequest { MaxPixelDimension = 500 }; pictureResult = await ChoosePicture.ExecuteAsync(choosePictureRequest); } retResult.Notification.AddRange(retResult.Notification); if (retResult.IsValid() && pictureResult.TaskResult == TaskResult.Success) { var faceContext = new RecognizeFaceContext { FaceImage = pictureResult.Image, GroupId = Constants.GroupId }; var recogResult = await RecognizeCommand.ExecuteAsync(faceContext); retResult.Notification.AddRange(recogResult.Notification); if (retResult.IsValid()) { var personResult = await PersonStore.FindPersonAsync(recogResult.Person.PersonId.ToString()); if (personResult == null) { UserData userData = null; if (recogResult.Person.UserData != null) { userData = JsonConvert.DeserializeObject <UserData>(recogResult.Person.UserData); } Mutant newPerson = new Mutant { Name = recogResult.Person.Name, Id = recogResult.Person.PersonId.ToString(), Data = userData }; await PersonStore.AddPersonAsync(newPerson); personResult = newPerson; } retResult.Person = personResult; } } return(retResult); }
public override async Task <DetectPersonResult> ExecuteAsync(DetectPersonContext request) { var retResult = new DetectPersonResult(); SelectPictureResult pictureResult; if (request.UseCamera) { var pictureRequest = new TakePictureRequest { CameraOption = request.CameraOption, MaxPixelDimension = 500 }; pictureResult = await TakePicture.ExecuteAsync(pictureRequest); } else { var choosePictureRequest = new ChoosePictureRequest { MaxPixelDimension = 500 }; pictureResult = await ChoosePicture.ExecuteAsync(choosePictureRequest); } retResult.Notification.AddRange(retResult.Notification); if (retResult.IsValid() && pictureResult.TaskResult == TaskResult.Success) { var faceContext = new DetectFaceContext { FaceImage = pictureResult.Image, DetectFaceAttributes = request.DetectFaceAttributes, DetectFaceId = request.DetectFaceId, DetectFaceLandmarks = request.DetectFaceLandmarks }; var recogResult = await DetectFace.ExecuteAsync(faceContext); retResult.Notification.AddRange(recogResult.Notification); if (retResult.IsValid()) { retResult.FaceData = recogResult.Face; } } return(retResult); }
void ReleaseDesignerOutlets() { if (ChoosePicture != null) { ChoosePicture.Dispose(); ChoosePicture = null; } if (CreateAlertForAll != null) { CreateAlertForAll.Dispose(); CreateAlertForAll = null; } if (EmailLabel != null) { EmailLabel.Dispose(); EmailLabel = null; } if (FullNameLabel != null) { FullNameLabel.Dispose(); FullNameLabel = null; } if (LogOutButton != null) { LogOutButton.Dispose(); LogOutButton = null; } if (StatusLabel != null) { StatusLabel.Dispose(); StatusLabel = null; } if (UserPicture != null) { UserPicture.Dispose(); UserPicture = null; } }
public override void ViewDidLoad() { base.ViewDidLoad(); Title = new UILabel(new CGRect(60, 0, NavigationController.Toolbar.Frame.Width, NavigationController.Toolbar.Frame.Height)) { TextColor = Style.Header.TextColor, BackgroundColor = UIColor.Clear }; GoBackButton = new UIButton(new CGRect(0, 0, 60, NavigationController.Toolbar.Frame.Height)) { TintColor = Style.Header.TextColor, Hidden = true }; GoBackButton.TouchDown += OnClickGoBack; GoBackButton.SetImage(UIImage.FromBundle("back").ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate), UIControlState.Normal); GalleryView = new UIView() { Hidden = true }; ChoosePicture = UIButton.FromType(UIButtonType.RoundedRect); ChoosePicture.Frame = new CGRect(0, 0, View.Frame.Width / 2, 40); ChoosePicture.TintColor = Style.Header.TextColor; ChoosePicture.BackgroundColor = UIColor.LightGray; ChoosePicture.SetTitle(Translator.GetText("choose_picture"), UIControlState.Normal); ChoosePicture.TouchDown += OnClickChoosePicture; TakePicture = UIButton.FromType(UIButtonType.RoundedRect); TakePicture.Frame = new CGRect(View.Frame.Width / 2, 0, View.Frame.Width / 2, 40); TakePicture.TintColor = Style.Header.TextColor; TakePicture.BackgroundColor = UIColor.LightGray; TakePicture.SetTitle(Translator.GetText("take_picture"), UIControlState.Normal); TakePicture.TouchDown += OnClickTakePicture; GalleryView.AddSubviews(ChoosePicture, TakePicture); NavigationController.NavigationBar.AddSubviews(GoBackButton); NavigationController.NavigationBar.TintColor = Style.Header.TextColor; NavigationController.NavigationBar.BarTintColor = Style.Header.BackgroundColor; NavigationController.NavigationBar.AddSubviews(Title); var scrollView = new UIScrollView(View.Frame) { ShowsHorizontalScrollIndicator = false, AutoresizingMask = UIViewAutoresizing.FlexibleHeight }; WebView = new UIWebView { ScalesPageToFit = true }; scrollView.AddSubviews(WebView, GalleryView); Add(scrollView); View.AddConstraints( scrollView.AtLeftOf(View), scrollView.AtTopOf(View), scrollView.WithSameWidth(View), scrollView.WithSameHeight(View), WebView.AtLeftOf(scrollView), WebView.AtTopOf(scrollView), WebView.WithSameWidth(scrollView), WebView.WithSameHeight(scrollView), GalleryView.AtLeftOf(scrollView), GalleryView.AtTopOf(scrollView), GalleryView.WithSameWidth(scrollView), GalleryView.WithSameHeight(scrollView), TakePicture.AtLeftOf(GalleryView), TakePicture.AtTopOf(GalleryView), ChoosePicture.AtRightOf(GalleryView), ChoosePicture.AtTopOf(GalleryView) ); View.SubviewsDoNotTranslateAutoresizingMaskIntoConstraints(); scrollView.SubviewsDoNotTranslateAutoresizingMaskIntoConstraints(); MenuClickEvent.AddListener(this); var menuItem = MenuViewModel.MenuItems.First(); OnMenuItemClick(menuItem.menu_title, menuItem.url, 0); _spinner = new Spinner(View); WebView.Delegate = new WebViewDelegate(_spinner, this); }