public async void ConformToRecord(Activity theActivity) { linkedActivity = theActivity; var curType = LettuceServer.Instance.ActivityType (theActivity.type); if (!String.IsNullOrEmpty(curType.icon)) this.ActivityTypeImage.SetImage (new NSUrl(curType.icon)); this.ActivityTypeLabel.Text = curType.typename; this.ActivityDescription.Text = linkedActivity.description; this.ActivityDurationLabel.Text = String.Format("{0} minutes", linkedActivity.duration); // fetch the venue var curVenue = LettuceServer.Instance.Venue(theActivity.venueid); if (curVenue == null) { curVenue = await LettuceServer.Instance.LoadVenue(theActivity.venueid); InvokeOnMainThread (() => { this.VenueNameLabel.Text = curVenue.title; if (!String.IsNullOrEmpty(curVenue.image)) this.VenueImage.SetImage (new NSUrl(curVenue.image)); }); } else { this.VenueNameLabel.Text = curVenue.title; if (!String.IsNullOrEmpty(curVenue.image)) this.VenueImage.SetImage (new NSUrl(curVenue.image)); } }
public override void ViewDidLoad() { base.ViewDidLoad (); newActivity = new Lettuce.Core.Activity (); // Perform any additional setup after loading the view, typically from a nib. ChooseTypeBtn.TouchUpInside += (object sender, EventArgs e) => { // to do - show new touch' UIAlertController actionSheet = UIAlertController.Create ("Activity Type", "What do you feel like doing?", UIAlertControllerStyle.ActionSheet); foreach (int curTypeId in LettuceServer.Instance.ActivityTypes.Keys) { ActivityType curType = LettuceServer.Instance.ActivityType(curTypeId); actionSheet.AddAction (UIAlertAction.Create (curType.typename, UIAlertActionStyle.Default, (action) => SetActivityType (curType.id))); } actionSheet.AddAction (UIAlertAction.Create ("Cancel", UIAlertActionStyle.Cancel, null)); this.PresentViewController (actionSheet, true, null); }; CancelBtn.TouchUpInside += (object sender, EventArgs e) => { DismissViewController (true, null); }; ChooseBtn.TouchUpInside += (object sender, EventArgs e) => { DismissViewController (true, null); if (ActivityCreated != null) ActivityCreated(newActivity); }; SearchBtn.TouchUpInside += (object sender, EventArgs e) => { DoYelpSearch(); }; SearchField.ShouldReturn = (theField) => { theField.ResignFirstResponder(); DoYelpSearch(); return false; }; keyWatcher = NSNotificationCenter.DefaultCenter.AddObserver (UITextView.TextDidChangeNotification, (notification) => { newActivity.description = ActivityDescription.Text; ActivityChanged(); }); ResultTable.RegisterNibForCellReuse (UINib.FromName (YelpResultCell.Key, NSBundle.MainBundle), YelpResultCell.Key); dataSource = new YelpResultTableSource (this); ResultTable.Source = dataSource; ActivityChanged (); }