void ReleaseDesignerOutlets() { if (TitleLabel != null) { TitleLabel.Dispose(); TitleLabel = null; } if (LocationLabel != null) { LocationLabel.Dispose(); LocationLabel = null; } if (TimeLabel != null) { TimeLabel.Dispose(); TimeLabel = null; } if (SpeakerLabel != null) { SpeakerLabel.Dispose(); SpeakerLabel = null; } if (OverviewLabel != null) { OverviewLabel.Dispose(); OverviewLabel = null; } if (FavoriteButton != null) { FavoriteButton.Dispose(); FavoriteButton = null; } if (ScrollView != null) { ScrollView.Dispose(); ScrollView = null; } }
public override void ViewDidLoad() { base.ViewDidLoad(); int width = 245; if (!UserInterfaceIdiomIsPhone) { width = 700; } session = BL.Managers.SessionManager.GetSession(sessionId); Title = "Session Detail"; TitleLabel.Text = session.Title; SpeakerLabel.Text = session.SpeakerNames; TimeLabel.Text = session.Start.ToString("dddd") + " " + session.Start.ToString("H:mm") + " - " + session.End.ToString("H:mm"); LocationLabel.Text = session.Room; OverviewLabel.Text = session.Overview; SizeF titleSize = TitleLabel.StringSize(session.Title , UIFont.FromName("Helvetica-Light", AppDelegate.Font16pt) , new SizeF(245, 400), UILineBreakMode.WordWrap); TitleLabel.Font = UIFont.FromName("Helvetica-Light", AppDelegate.Font16pt); TitleLabel.TextColor = UIColor.Black; TitleLabel.Frame = new RectangleF(13, 15, width, titleSize.Height); TitleLabel.Lines = 0; TitleLabel.Font = UIFont.FromName("Helvetica-Light", AppDelegate.Font16pt); SizeF speakerSize = TitleLabel.StringSize(session.SpeakerNames , UIFont.FromName("Helvetica-LightOblique", AppDelegate.Font10pt) , new SizeF(245, 400), UILineBreakMode.WordWrap); SpeakerLabel.Font = UIFont.FromName("Helvetica-LightOblique", AppDelegate.Font10pt); SpeakerLabel.Frame = new RectangleF(13 , 15 + 13 + titleSize.Height , width, speakerSize.Height); TimeLabel.Font = UIFont.FromName("Helvetica-Light", AppDelegate.Font7_5pt); TimeLabel.Frame = new RectangleF(13 , 15 + titleSize.Height + 13 + speakerSize.Height + 5 , width, 10); LocationLabel.Font = UIFont.FromName("Helvetica-Light", AppDelegate.Font7_5pt); LocationLabel.Frame = new RectangleF(13 , 15 + titleSize.Height + 13 + speakerSize.Height + 7 + 12 , width, 10); float overviewLabelWidth = 310; var overviewLabelY = 15 + titleSize.Height + 13 + speakerSize.Height + TimeLabel.Frame.Height + LocationLabel.Frame.Height + 20; float overviewLabelHeight = (UserInterfaceIdiomIsPhone?360:854) - overviewLabelY; OverviewLabel.Editable = false; OverviewLabel.Font = UIFont.FromName("Helvetica-Light", AppDelegate.Font10_5pt); if (AppDelegate.IsPhone) { // going to scroll the whole thing! OverviewLabel.ScrollEnabled = false; SizeF overviewSize = OverviewLabel.StringSize( session.Overview , UIFont.FromName("Helvetica-Light", AppDelegate.Font10_5pt) , new SizeF(overviewLabelWidth, 2500) // just width wasn't working... , UILineBreakMode.WordWrap); overviewLabelHeight = overviewSize.Height + 30; ScrollView.ContentSize = new SizeF(320, overviewLabelY + overviewLabelHeight + 10); } OverviewLabel.Frame = new RectangleF(5 , overviewLabelY , UserInterfaceIdiomIsPhone?overviewLabelWidth:700 , overviewLabelHeight); FavoriteButton.TouchUpInside += (sender, e) => { ToggleFavorite(); }; if (FavoritesManager.IsFavorite(session.Key)) { FavoriteButton.SetImage(new UIImage(AppDelegate.ImageIsFavorite), UIControlState.Normal); } else { FavoriteButton.SetImage(new UIImage(AppDelegate.ImageNotFavorite), UIControlState.Normal); } }