Esempio n. 1
0
        public static IntPtr GetAppearance(IntPtr class_ptr, UITraitCollection traits)
        {
            if (traits == null)
                throw new ArgumentNullException ("traits");

            return Messaging.IntPtr_objc_msgSend_IntPtr (class_ptr, Selector.GetHandle (UIAppearance.selAppearanceForTraitCollection), traits.Handle);
        }
Esempio n. 2
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            if (TraitCollection.HasDifferentColorAppearanceComparedTo(previousTraitCollection))
            {
                SetAppTheme();
            }
        }
Esempio n. 3
0
        public static void UpdateStatusBarView(this UIViewController controller, UITraitCollection traitCollection)
        {
            var statusBarView = controller.View.ViewWithTag(statusBarViewTag);

            if (statusBarView != null)
            {
                statusBarView.Hidden = traitCollection.VerticalSizeClass == UIUserInterfaceSizeClass.Compact;
            }
        }
Esempio n. 4
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            if (TraitCollection.UserInterfaceStyle != previousTraitCollection.UserInterfaceStyle)
            {
                SetTheme();
            }
        }
Esempio n. 5
0
 public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
 {
     base.TraitCollectionDidChange(previousTraitCollection);
     // Make sure the control adheres to changes in UI theme
     if (PlatformVersion.IsAtLeast(13) && previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
     {
         SetupLayer();
     }
 }
Esempio n. 6
0
 public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
 {
     base.TraitCollectionDidChange(previousTraitCollection);
     // Make sure the cells adhere to changes UI theme
     if (Forms.IsiOS13OrNewer && previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
     {
         Control.ReloadData();
     }
 }
Esempio n. 7
0
 public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
 {
     base.TraitCollectionDidChange(previousTraitCollection);
     // Make sure the control adheres to changes in UI theme
     if (Forms.IsiOS13OrNewer && previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
     {
         UpdateTextColor();
     }
 }
Esempio n. 8
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            // Reset constraints.
            NSLayoutConstraint.DeactivateConstraints(_portraitConstraints);
            NSLayoutConstraint.DeactivateConstraints(_landscapeConstraints);
            SetLayoutOrientation();
        }
        public void UpdatePreferredContentSizeWithTraitCollection(UITraitCollection traitCollection)
        {
            float sizeHeigt = traitCollection.VerticalSizeClass == UIUserInterfaceSizeClass.Compact ? 270f : 420f;

            PreferredContentSize = new CoreGraphics.CGSize(View.Bounds.Width, sizeHeigt);
            slider.MaxValue      = (float)PreferredContentSize.Height;
            slider.MinValue      = 220f;
            slider.Value         = slider.MaxValue;
        }
Esempio n. 10
0
 public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
 {
     base.TraitCollectionDidChange(previousTraitCollection);
     // Make sure the cells adhere to changes UI theme
     if (PlatformVersion.IsAtLeast(13) && previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
     {
         Control.ReloadData();
     }
 }
Esempio n. 11
0
 public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
 {
     base.TraitCollectionDidChange(previousTraitCollection);
     // Reload the html pages when switching to and from dark mode.
     if (previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
     {
         LoadHTML();
     }
 }
Esempio n. 12
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            if (Forms.IsiOS13OrNewer && previousTraitCollection.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
            {
                Application.Current?.TriggerThemeChanged(new AppThemeChangedEventArgs(Application.Current.RequestedTheme));
            }
        }
Esempio n. 13
0
 public override void WillTransitionToTraitCollection(UITraitCollection traitCollection, IUIViewControllerTransitionCoordinator coordinator)
 {
     base.WillTransitionToTraitCollection(traitCollection, coordinator);
     coordinator.AnimateAlongsideTransition((UIViewControllerTransitionCoordinatorContext) => {
         UpdateConstraintsForTraitCollection(traitCollection);
         View.SetNeedsLayout();
     }, (UIViewControllerTransitionCoordinatorContext) => {
     });
 }
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            //Important: Must call base method
            base.TraitCollectionDidChange(previousTraitCollection);

            if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available)
                RegisterForPreviewingWithDelegate (this, View);
            else
                alertController = UIAlertController.Create ("3D Touch Not Available", "Unsupported device.", UIAlertControllerStyle.Alert);
        }
Esempio n. 15
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);
            Console.WriteLine($"TraitCollectionDidChange: {TraitCollection.UserInterfaceStyle} != {previousTraitCollection.UserInterfaceStyle}");

            if (this.TraitCollection.UserInterfaceStyle != previousTraitCollection.UserInterfaceStyle)
            {
                SetAppTheme();
            }
        }
Esempio n. 16
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            // See if the new TraitCollection value includes force touch.
            if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available)
            {
                forceTouchAvailable = true;
            }
        }
		public override void ViewWillTransitionToSize (CGSize toSize, IUIViewControllerTransitionCoordinator coordinator)
		{
			if (toSize.Width > 320.0f) {
				ForcedTraitCollection = UITraitCollection.FromHorizontalSizeClass (UIUserInterfaceSizeClass.Regular);
			} else {
				ForcedTraitCollection = new UITraitCollection ();
			}

			base.ViewWillTransitionToSize (toSize, coordinator);
		}
        /// <summary>
        /// Called when the user changes dark/light mode while the app is running
        /// </summary>
        /// <param name="previousTraitCollection"></param>
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            if (TraitCollection.UserInterfaceStyle != previousTraitCollection.UserInterfaceStyle)
            {
                Console.WriteLine($"TraitCollectionDidChange: {TraitCollection.UserInterfaceStyle} != {previousTraitCollection.UserInterfaceStyle}");
                ThemeService.ApplyTheme(CurrentTheme());
            }
        }
Esempio n. 19
0
        public void UpdateConstraintsForTraitCollection(UITraitCollection collection)
        {
            var views = NSDictionary.FromObjectsAndKeys(
                new object[] { TopLayoutGuide, ImageView, NameLabel, ConversationsLabel, PhotosLabel },
                new object[] { "topLayoutGuide", "imageView", "nameLabel", "conversationsLabel", "photosLabel" }
                );

            var newConstraints = new List <NSLayoutConstraint> ();

            if (collection.VerticalSizeClass == UIUserInterfaceSizeClass.Compact)
            {
                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("|[imageView]-[nameLabel]-|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("[imageView]-[conversationsLabel]-|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("[imageView]-[photosLabel]-|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("V:|[topLayoutGuide]-[nameLabel]-[conversationsLabel]-[photosLabel]",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("V:|[topLayoutGuide][imageView]|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.Add(NSLayoutConstraint.Create(ImageView, NSLayoutAttribute.Width, NSLayoutRelation.Equal,
                                                             View, NSLayoutAttribute.Width, 0.5f, 0.0f));
            }
            else
            {
                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("|[imageView]|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("|-[nameLabel]-|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("|-[conversationsLabel]-|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("|-[photosLabel]-|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));

                newConstraints.AddRange(NSLayoutConstraint.FromVisualFormat("V:[topLayoutGuide]-[nameLabel]-[conversationsLabel]-[photosLabel]-20-[imageView]|",
                                                                            NSLayoutFormatOptions.DirectionLeadingToTrailing, null, views));
            }

            if (constraints != null)
            {
                View.RemoveConstraints(constraints.ToArray());
            }

            constraints = newConstraints;
            View.AddConstraints(constraints.ToArray());
        }
Esempio n. 20
0
 public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
 {
     base.TraitCollectionDidChange(previousTraitCollection);
     if (UIDevice.CurrentDevice.CheckSystemVersion(13, 0))
     {
         if (TraitCollection.UserInterfaceStyle != previousTraitCollection.UserInterfaceStyle)
         {
             SetAppTheme();
         }
     }
 }
Esempio n. 21
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            if (Forms.IsiOS13OrNewer &&
                previousTraitCollection.UserInterfaceStyle != TraitCollection.UserInterfaceStyle &&
                UIApplication.SharedApplication.ApplicationState != UIApplicationState.Background)
            {
                ((IApplication)Application.Current)?.ThemeChanged();
            }
        }
Esempio n. 22
0
 public static ResourceDictionary GetColorTheme(this UITraitCollection tc)
 {
     if (tc.UserInterfaceStyle == UIUserInterfaceStyle.Dark)
     {
         return(new DarkTheme());
     }
     else
     {
         return(new LightTheme());
     }
 }
		/// <summary>
		/// Called when the iOS interface environment changes. We're using it here to detect whether or not 3D Touch capabiliies are available on the device.
		/// </summary>
		/// <param name="previousTraitCollection">Previous trait collection.</param>
		public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
		{
			base.TraitCollectionDidChange(previousTraitCollection);

			// If 3D Touch (ForceTouch) is available, then register a IUIViewControllerPreviewingDelegate, which in this case is this very class because we're implementing IUIViewControllerPreviewingDelegate.
			// You could put the IUIViewControllerPreviewingDelegate implementation in another class if you wanted to. Then you'd pass an instance of it, instead of "this".
			if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available)
			{
				RegisterForPreviewingWithDelegate(this, View);
			}	
		}
Esempio n. 24
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

#if __XCODE11__
            if (System.Maui.Maui.IsiOS13OrNewer && previousTraitCollection.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
            {
                Application.Current?.OnRequestedThemeChanged(new AppThemeChangedEventArgs(Application.Current.RequestedTheme));
            }
#endif
        }
Esempio n. 25
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);
#if __XCODE11__
            // Make sure the control adheres to changes in UI theme
            if (Forms.IsiOS13OrNewer && previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
            {
                SetupLayer();
            }
#endif
        }
        /// <summary>
        /// Called when the iOS interface environment changes. We're using it here to detect whether or not 3D Touch capabiliies are available on the device.
        /// </summary>
        /// <param name="previousTraitCollection">Previous trait collection.</param>
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            // If 3D Touch (ForceTouch) is available, then register a IUIViewControllerPreviewingDelegate, which in this case is this very class because we're implementing IUIViewControllerPreviewingDelegate.
            // You could put the IUIViewControllerPreviewingDelegate implementation in another class if you wanted to. Then you'd pass an instance of it, instead of "this".
            if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available)
            {
                RegisterForPreviewingWithDelegate(this, View);
            }
        }
Esempio n. 27
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);
#if __XCODE11__
            // Make sure the control adheres to changes in UI theme
            if (System.Maui.Maui.IsiOS13OrNewer && previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
            {
                UpdateTextColor();
            }
#endif
        }
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            // Deactivate old constraints.
            NSLayoutConstraint.DeactivateConstraints(_portraitConstraints);
            NSLayoutConstraint.DeactivateConstraints(_landscapeConstraints);

            // Apply new constraints.
            ApplyConstraints();
        }
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            if (TraitCollection.HorizontalSizeClass == UIUserInterfaceSizeClass.Regular)
            {
                if (_compatWidthConstraints != null)
                {
                    NSLayoutConstraint.DeactivateConstraints(_compatWidthConstraints.ToArray());
                }

                if (_regularWidthConstraints != null)
                {
                    NSLayoutConstraint.ActivateConstraints(_regularWidthConstraints.ToArray());
                }
            }
            else if (TraitCollection.HorizontalSizeClass == UIUserInterfaceSizeClass.Compact)
            {
                if (_regularWidthConstraints != null)
                {
                    NSLayoutConstraint.DeactivateConstraints(_regularWidthConstraints.ToArray());
                }

                if (_compatWidthConstraints != null)
                {
                    NSLayoutConstraint.ActivateConstraints(_compatWidthConstraints.ToArray());
                }
            }

            if (TraitCollection.VerticalSizeClass == UIUserInterfaceSizeClass.Regular)
            {
                if (_compatHeightConstraints != null)
                {
                    NSLayoutConstraint.DeactivateConstraints(_compatHeightConstraints.ToArray());
                }

                if (_regularHeightConstraints != null)
                {
                    NSLayoutConstraint.ActivateConstraints(_regularHeightConstraints.ToArray());
                }
            }
            else if (TraitCollection.VerticalSizeClass == UIUserInterfaceSizeClass.Compact)
            {
                if (_regularHeightConstraints != null)
                {
                    NSLayoutConstraint.DeactivateConstraints(_regularHeightConstraints.ToArray());
                }

                if (_compatHeightConstraints != null)
                {
                    NSLayoutConstraint.ActivateConstraints(_compatHeightConstraints.ToArray());
                }
            }
        }
Esempio n. 30
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);
#if __XCODE11__
            // Make sure the cells adhere to changes UI theme
            if (previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
            {
                Control.ReloadData();
            }
#endif
        }
Esempio n. 31
0
 public override void WillTransitionToTraitCollection(UITraitCollection traitCollection,
                                                      IUIViewControllerTransitionCoordinator coordinator)
 {
     TitleScrollView.Delegate   = null;
     ContentScrollView.Delegate = null;
     coordinator.AnimateAlongsideTransition(context => {}, context => {
         TitleScrollView.Delegate   = this;
         ContentScrollView.Delegate = this;
         SwitchPage(_selectedIndex, false);
     });
 }
Esempio n. 32
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);
#if __XCODE11__
            // Make sure the control adheres to changes in UI theme
            if (System.Maui.Maui.IsiOS13OrNewer && previousTraitCollection?.UserInterfaceStyle != TraitCollection.UserInterfaceStyle)
            {
                _radioButtonLayer.SetNeedsDisplay();
            }
#endif
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();

            if (!UIDevice.CurrentDevice.CheckSystemVersion (9, 0))
            {
                hasForceTouch = false;
            } else {
                var traits = new UITraitCollection ();
                hasForceTouch = traits.ForceTouchCapability == UIForceTouchCapability.Available;
            }
        }
Esempio n. 34
0
		public override void TraitCollectionDidChange (UITraitCollection previousTraitCollection)
		{
			if (previousTraitCollection == null)
				previousTraitCollection = new UITraitCollection ();

			base.TraitCollectionDidChange (previousTraitCollection);

			if ((TraitCollection.VerticalSizeClass != previousTraitCollection.VerticalSizeClass) ||
			    (TraitCollection.VerticalSizeClass != previousTraitCollection.HorizontalSizeClass)) {
				InvalidateIntrinsicContentSize ();
			}
		}
Esempio n. 35
0
 public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
 {
     base.TraitCollectionDidChange(previousTraitCollection);
     if (View.TraitCollection.VerticalSizeClass == UIUserInterfaceSizeClass.Compact)
     {
         _stackView.Axis = UILayoutConstraintAxis.Horizontal;
     }
     else
     {
         _stackView.Axis = UILayoutConstraintAxis.Vertical;
     }
 }
Esempio n. 36
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            //Important: call the base function
            base.TraitCollectionDidChange(previousTraitCollection);

            //See if the new TraitCollection value includes force touch
            if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available)
            {
                _is3DTouchCompat = true;
            }
            _is3DTouchCompat = false;
        }
		public override void TraitCollectionDidChange (UITraitCollection previousTraitCollection)
		{
			if (TraitCollection.Contains (UITraitCollection.FromHorizontalSizeClass (UIUserInterfaceSizeClass.Compact))) {
				if (regularConstraints [0].Active) {
					NSLayoutConstraint.DeactivateConstraints (regularConstraints);
					NSLayoutConstraint.ActivateConstraints (compactConstraints);
				}
			} else {
				if (compactConstraints [0].Active) {
					NSLayoutConstraint.DeactivateConstraints (compactConstraints);
					NSLayoutConstraint.ActivateConstraints (regularConstraints);
				}
			}
		}
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            //See if the new TraitCollection value includes force touch
            if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available)
            {
                ForceTouchEnabled = true;
            }
            else
            {
                LabelForce.Text = "Force Touch not available";
            }
        }
		public void UpdateConstraintsForTraitCollection (UITraitCollection collection)
		{
			var newConstraints = new List<NSLayoutConstraint> ();
			if (collection.VerticalSizeClass == UIUserInterfaceSizeClass.Compact) {
				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("|[imageView]-[nameLabel]-|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"imageView", ImageView,
					"nameLabel", NameLabel));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("[imageView]-[conversationsLabel]-|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"imageView", ImageView,
					"conversationsLabel", ConversationsLabel));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("[imageView]-[photosLabel]-|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"imageView", ImageView,
					"photosLabel", PhotosLabel));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("V:|[topLayoutGuide]-[nameLabel]-[conversationsLabel]-[photosLabel]",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"topLayoutGuide", TopLayoutGuide,
					"nameLabel", NameLabel,
					"conversationsLabel", ConversationsLabel,
					"photosLabel", PhotosLabel));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("V:|[topLayoutGuide][imageView]|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"topLayoutGuide", TopLayoutGuide,
					"imageView", ImageView));

				newConstraints.Add (NSLayoutConstraint.Create (ImageView, NSLayoutAttribute.Width, NSLayoutRelation.Equal,
					View, NSLayoutAttribute.Width, 0.5f, 0.0f));
			} else {
				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("|[imageView]|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"imageView", ImageView));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("|-[nameLabel]-|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"nameLabel", NameLabel));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("|-[conversationsLabel]-|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"conversationsLabel", ConversationsLabel));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("|-[photosLabel]-|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"photosLabel", PhotosLabel));

				newConstraints.AddRange (NSLayoutConstraint.FromVisualFormat ("V:[topLayoutGuide]-[nameLabel]-[conversationsLabel]-[photosLabel]-20-[imageView]|",
					NSLayoutFormatOptions.DirectionLeadingToTrailing,
					"topLayoutGuide", TopLayoutGuide,
					"nameLabel", NameLabel,
					"conversationsLabel", ConversationsLabel,
					"photosLabel", PhotosLabel,
					"imageView", ImageView));
			}

			if (constraints != null)
				View.RemoveConstraints (constraints.ToArray ());

			constraints = newConstraints;
			View.AddConstraints (constraints.ToArray ());
		}
		public override void TraitCollectionDidChange (UITraitCollection previousTraitCollection)
		{
			base.TraitCollectionDidChange (previousTraitCollection);
			ShowOrHideSecond (false);
		}
		public override void TraitCollectionDidChange (UITraitCollection previousTraitCollection)
		{
			if (previousTraitCollection != null) base.TraitCollectionDidChange(previousTraitCollection);

			PopulatePlaceholderLabels(TraitCollection.Contains(UITraitCollection.FromVerticalSizeClass(UIUserInterfaceSizeClass.Compact)));
		}
Esempio n. 42
0
        public static IntPtr GetAppearance(IntPtr class_ptr, UITraitCollection traits, params Type [] whenFoundIn)
        {
            if (traits == null)
                throw new ArgumentNullException ("traits");

            IntPtr[] ptrs = TypesToPointers (whenFoundIn);

            if (IntPtr.Size == 8 && Runtime.Arch == Arch.DEVICE) {
                // The native function takes a variable number of arguments ('appearanceWhenContainedIn:'), terminated with a nil value.
                // Unfortunately iOS/ARM64 (not the general ARM64 ABI as published by ARM) has a different calling convention for varargs methods
                // than regular methods: all variable arguments are passed on the stack, no matter how many normal arguments there are.
                // Normally 8 arguments are passed in registers, then the subsequent ones are passed on the stack, so what we do is to provide
                // 6 dummy arguments (remember that Objective-C always has two hidden arguments (id, SEL), which are the two first arguments
                // here), in order to push the arguments we care about to the stack.
                return IntPtr_objc_msgSend_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr (
                    class_ptr, // x0
                    Selector.GetHandle (UIAppearance.selAppearanceForTraitCollectionWhenContainedIn), // x1
                    traits.Handle, // x2
                    ptrs [0], // x3
                    IntPtr.Zero, // x4
                    IntPtr.Zero, // x5
                    IntPtr.Zero, // x6
                    IntPtr.Zero, // x7
                    ptrs [1], // the rest is on the stack. This is where iOS/ARM64 expects the first varargs arguments.
                    ptrs [2], ptrs [3], ptrs [4], IntPtr.Zero);
            } else {
                return Messaging.IntPtr_objc_msgSend_IntPtr_IntPtr_IntPtr_IntPtr_IntPtr (class_ptr, Selector.GetHandle (UIAppearance.selAppearanceForTraitCollectionWhenContainedIn),
                                                     traits.Handle, ptrs [0], ptrs [1], ptrs [2], ptrs [3]);
            }
        }
		public override void WillTransitionToTraitCollection (UITraitCollection traitCollection, IUIViewControllerTransitionCoordinator coordinator)
		{
			base.WillTransitionToTraitCollection (traitCollection, coordinator);
			coordinator.AnimateAlongsideTransition ((UIViewControllerTransitionCoordinatorContext) => {
				UpdateConstraintsForTraitCollection (traitCollection);
				View.SetNeedsLayout ();
			}, (UIViewControllerTransitionCoordinatorContext) => {
			});
		}
		public UIModalPresentationStyle GetAdaptivePresentationStyle (UIPresentationController controller, UITraitCollection traitCollection)
		{
			return traitCollection.HorizontalSizeClass == UIUserInterfaceSizeClass.Compact ? UIModalPresentationStyle.FullScreen : UIModalPresentationStyle.FormSheet;
		}
        public override void WillTransitionToTraitCollection(UITraitCollection traitCollection, IUIViewControllerTransitionCoordinator coordinator)
        {
            base.WillTransitionToTraitCollection(traitCollection, coordinator);

            CurrentTraitCollection = traitCollection;
        }
Esempio n. 46
0
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            base.TraitCollectionDidChange(previousTraitCollection);

            try{
                if (TraitCollection.ForceTouchCapability == UIForceTouchCapability.Available) {
                    RegisterForPreviewingWithDelegate(this, this.View);
                }
            }catch{
            }
        }
Esempio n. 47
0
        // new in iOS9 but the only option for tvOS
        public static IntPtr GetAppearance(IntPtr class_ptr, UITraitCollection traits, params Type [] whenFoundIn)
        {
            if (traits == null)
                throw new ArgumentNullException ("traits");

            using (var array = NSArray.FromIntPtrs (TypesToPointers (whenFoundIn))) {
                return Messaging.IntPtr_objc_msgSend_IntPtr_IntPtr (class_ptr,
                    Selector.GetHandle (UIAppearance.selAppearanceForTraitCollectionWhenContainedInInstancesOfClasses),
                    traits.Handle, array.Handle);
            }
        }
		public override void TraitCollectionDidChange (UITraitCollection previousTraitCollection)
		{
			AnnotateView.RefreshLayoutAndImageForRotation();

			if (noImageView.IsDescendantOfView(AnnotateView)) {
				noImageView.Frame = AnnotateView.Bounds;
			}
		}
        public override void TraitCollectionDidChange(UITraitCollection previousTraitCollection)
        {
            if (previousTraitCollection == null)
                previousTraitCollection = new UITraitCollection();

            base.TraitCollectionDidChange(previousTraitCollection);

            if (TraitCollection.VerticalSizeClass == UIUserInterfaceSizeClass.Compact)
            {
                CGAffineTransform t = CGAffineTransform.MakeIdentity();
                t.Translate(this.Frame.Width/2, 0);
                t.Scale (0.5f, 0.5f);

                this.Transform = t;
            }
            else
            {
                CGAffineTransform t = CGAffineTransform.MakeIdentity();
                t.Translate(0, 0);
                t.Scale (1f, 1f);

                this.Transform = t;
            }
        }