public override void AwakeFromNib() { base.AwakeFromNib(); UserName.Text = AppSettingsManager.FirstName + " " + AppSettingsManager.LastName; using (var url = new NSUrl(AppSettingsManager.ProfilePictureUrl)) using (var data = NSData.FromUrl(url)) { ProfilePictureImageView.Image = UIImage.LoadFromData(data); } LikeButton.TouchUpInside += (sender, args) => { CurrentPhoto.IsLiked = !CurrentPhoto.IsLiked; LikeButton.SetTitleColor(CurrentPhoto.IsLiked ? UIColor.Red : UIColor.Blue, UIControlState.Normal); }; //DeleteButton.TouchUpInside += ( sender, args ) => { // CurrentPhoto.ToBeDeleted = true; // //ContentView.Hidden = true; // //ContentView.Frame = CGRect.Empty; // //Frame = CGRect.Empty; // //_table.ReloadRows(new[] { _path}, UITableViewRowAnimation.Fade ); // _table.Delete(null); // PhotoDataSource.Source.RemoveAtIndex(_path); // _table.DeleteRows(new [] {_path}, UITableViewRowAnimation.Automatic ); //}; }
void OnPropertyChanged(object sender, PropertyChangedEventArgs args) { var name = args.PropertyName; if (name.Equals("IsLikedByUser")) { LikeButton.SetTitleColor(ViewModel.LikeButtonTextColor.ToUIColor(), UIControlState.Normal); LikeButton.SetTitle(ViewModel.LikeButtonText, UIControlState.Normal); } else if (name.Equals("IsCommentedByUser")) { CommentButton.SetTitleColor(ViewModel.CommentButtonTextColor.ToUIColor(), UIControlState.Normal); CommentButton.SetTitle(ViewModel.CommentButtonText, UIControlState.Normal); } else if (name.Equals("IsSharedByUser")) { ShareButton.SetTitleColor(ViewModel.ShareButtonTextColor.ToUIColor(), UIControlState.Normal); ShareButton.SetTitle(ViewModel.ShareButtonText, UIControlState.Normal); } }
void InitUI() { // Adjust constraints as needed PhotoImageViewHeightConstraint.Constant = ViewModel.ShowImage ? _photoImageViewDefaultHeightConstraint : 0; // Map values to UI elements BodyTextView.Text = null; BodyTextView.Text = ViewModel.Text; BodyTextViewHeightConstraint.Constant = BodyTextView.SizeThatFits(new CGSize(BodyTextView.Frame.Width, nfloat.MaxValue)).Height; TimeLabel.Text = ViewModel.ShowDateTime ? ViewModel.DisplayDateTime : string.Empty; NameLabel.SetHighlightText(ViewModel.UserName, ViewModel.UserName.IndexOf("@"), UIColor.LightGray); LikeButton.SetTitle(ViewModel.LikeButtonText, UIControlState.Normal); LikeButton.SetTitleColor(ViewModel.LikeButtonTextColor.ToUIColor(), UIControlState.Normal); CommentButton.SetTitle(ViewModel.CommentButtonText, UIControlState.Normal); CommentButton.SetTitleColor(ViewModel.CommentButtonTextColor.ToUIColor(), UIControlState.Normal); ShareButton.SetTitle(ViewModel.ShareButtonText, UIControlState.Normal); ShareButton.SetTitleColor(ViewModel.ShareButtonTextColor.ToUIColor(), UIControlState.Normal); if (ViewModel.ShowImage) { ActivityIndicator.StartAnimating(); } else { ActivityIndicator.StopAnimating(); } SocialTypeImageView.Image = UIImage.FromBundle(ViewModel.SocialMediaImage); SocialTypeImageView.Hidden = !ViewModel.ShowSocialMediaImage; UserImageView.SetImage( url: new NSUrl(ViewModel.UserImageUrl), placeholder: UIImage.FromBundle(ViewModel.UserImagePlaceholder) ); if (ViewModel.ShowImage) { PhotoImageView.SetImage( url: new NSUrl(ViewModel.ImageUrl), completionHandler: ((UIImage image, NSError error, SDImageCacheType cacheType, NSUrl imageUrl) => { ActivityIndicator.StopAnimating(); }) ); } else { PhotoImageView.Image = null; } if (ViewModel.ShowTimeline) { ContainerViewLeadingConstraint.Constant = _containerViewTimelineLeadingConstraint; TimelineView.Hidden = false; } else { ContainerViewLeadingConstraint.Constant = _containerViewDefaultLeadingConstraint; TimelineView.Hidden = true; } CommentButton.Hidden = !ViewModel.ShowCommentButton; ShareButton.Hidden = !ViewModel.ShowShareButton; // TODO: Remove this when we're ready to support sharing ShareButton.Hidden = true; }