コード例 #1
0
		public override void LoadView ()
		{
			View = new UIView ();
			View.BackgroundColor = UIColor.White;

			var imageView = new UIImageView ();
			imageView.ContentMode = UIViewContentMode.ScaleAspectFit;
			imageView.TranslatesAutoresizingMaskIntoConstraints = false;
			ImageView = imageView;
			View.Add (ImageView);

			var ratingControl = new AAPLRatingControl ();
			ratingControl.TranslatesAutoresizingMaskIntoConstraints = false;
			ratingControl.AddTarget (RatingChanges, UIControlEvent.ValueChanged);
			RatingControl = ratingControl;
			View.Add (RatingControl);

			var overlayButton = new AAPLOverlayView ();
			overlayButton.TranslatesAutoresizingMaskIntoConstraints = false;
			OverlayButton = overlayButton;
			View.Add (OverlayButton);

			UpdatePhoto ();

			var views = NSDictionary.FromObjectsAndKeys (
	            new object[] { imageView, ratingControl, overlayButton },
	            new object[] { "imageView", "ratingControl", "overlayButton" }
            );

			View.AddConstraints (NSLayoutConstraint.FromVisualFormat ("|[imageView]|",
				NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

			View.AddConstraints (NSLayoutConstraint.FromVisualFormat ("V:|[imageView]|",
				NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

			View.AddConstraints (NSLayoutConstraint.FromVisualFormat ("[ratingControl]-|",
				NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

			View.AddConstraints (NSLayoutConstraint.FromVisualFormat ("[overlayButton]-|",
				NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

			View.AddConstraints (NSLayoutConstraint.FromVisualFormat ("V:[overlayButton]-[ratingControl]-|",
				NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

			var constraints = new List<NSLayoutConstraint> ();

			constraints.AddRange (NSLayoutConstraint.FromVisualFormat ("|-(>=20)-[ratingControl]",
				NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

			constraints.AddRange (NSLayoutConstraint.FromVisualFormat ("|-(>=20)-[overlayButton]",
				NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

			foreach (var constraint in constraints)
				constraint.Priority = (int)UILayoutPriority.Required - 1;

			View.AddConstraints (constraints.ToArray ());
		}
コード例 #2
0
        public override void LoadView()
        {
            View = new UIView();
            View.BackgroundColor = UIColor.White;

            var imageView = new UIImageView
            {
                ContentMode = UIViewContentMode.ScaleAspectFit,
                TranslatesAutoresizingMaskIntoConstraints = false
            };

            ImageView = imageView;
            View.Add(ImageView);

            var ratingControl = new AAPLRatingControl();

            ratingControl.TranslatesAutoresizingMaskIntoConstraints = false;
            ratingControl.AddTarget(RatingChanges, UIControlEvent.ValueChanged);
            RatingControl = ratingControl;
            View.Add(RatingControl);

            var overlayButton = new AAPLOverlayView();

            overlayButton.TranslatesAutoresizingMaskIntoConstraints = false;
            OverlayButton = overlayButton;
            View.Add(OverlayButton);

            UpdatePhoto();

            var views = NSDictionary.FromObjectsAndKeys(
                new object[] { imageView, ratingControl, overlayButton },
                new object[] { "imageView", "ratingControl", "overlayButton" }
                );

            View.AddConstraints(NSLayoutConstraint.FromVisualFormat("|[imageView]|",
                                                                    NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

            View.AddConstraints(NSLayoutConstraint.FromVisualFormat("V:|[imageView]|",
                                                                    NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

            View.AddConstraints(NSLayoutConstraint.FromVisualFormat("[ratingControl]-|",
                                                                    NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

            View.AddConstraints(NSLayoutConstraint.FromVisualFormat("[overlayButton]-|",
                                                                    NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

            View.AddConstraints(NSLayoutConstraint.FromVisualFormat("V:[overlayButton]-[ratingControl]-|",
                                                                    NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

            var constraints = new List <NSLayoutConstraint>();

            constraints.AddRange(NSLayoutConstraint.FromVisualFormat("|-(>=20)-[ratingControl]",
                                                                     NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

            constraints.AddRange(NSLayoutConstraint.FromVisualFormat("|-(>=20)-[overlayButton]",
                                                                     NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

            foreach (var constraint in constraints)
            {
                constraint.Priority = (int)UILayoutPriority.Required - 1;
            }

            View.AddConstraints(constraints.ToArray());
        }