コード例 #1
0
ファイル: ViewExtensions.cs プロジェクト: Clancey/iOSHelpers
 //        static readonly IntPtr selAccessibilityIdentifier_Handle = Selector.GetHandle ("accessibilityIdentifier");
 //        static readonly IntPtr setAccessibilityIdentifier_Handle = Selector.GetHandle ("setAccessibilityIdentifier:");
 //        public static UIView SetAccessibilityId(this UIView view, string id)
 //        {
 //            var intPtr = NSString.CreateNative (id);
 //            Messaging.void_objc_msgSend_IntPtr (view.Handle, setAccessibilityIdentifier_Handle, intPtr);
 //            NSString.ReleaseNative (intPtr);
 //            return view;
 //        }
 //
 //        public static string GetAccessibilityId(this UIView view)
 //        {
 //            return NSString.FromHandle (Messaging.IntPtr_objc_msgSend (view.Handle, selAccessibilityIdentifier_Handle));
 //        }
 //        public static UIBarButtonItem SetAccessibilityId(this UIBarButtonItem view, string id)
 //        {
 //            var nsId = NSString.CreateNative (id);
 //            Messaging.void_objc_msgSend_IntPtr (view.Handle, setAccessibilityIdentifier_Handle, nsId);
 //            NSString.ReleaseNative (nsId);
 //            return view;
 //        }
 public static UIView AddMotion(this UIView view, nfloat min, nfloat max)
 {
     view.AddMotionEffect ( new UIInterpolatingMotionEffect ("center.x", UIInterpolatingMotionEffectType.TiltAlongHorizontalAxis) {
         MinimumRelativeValue = new NSNumber (min),
         MaximumRelativeValue = new NSNumber (max)
     });
     view.AddMotionEffect (new UIInterpolatingMotionEffect ("center.y", UIInterpolatingMotionEffectType.TiltAlongVerticalAxis) {
         MinimumRelativeValue = new NSNumber (min),
         MaximumRelativeValue = new NSNumber (max)
     });
     return view;
 }
コード例 #2
0
        public static void ApplyMotionEffects(this UIView view, float horizontalRange = 10.0f, float verticalRange = 10.0f)
        {
            if (UIDevice.CurrentDevice.CheckSystemVersion(7, 0))
            {
                UIInterpolatingMotionEffect horizontalEffect = new UIInterpolatingMotionEffect("center.x", UIInterpolatingMotionEffectType.TiltAlongHorizontalAxis);
                horizontalEffect.MinimumRelativeValue = NSNumber.FromFloat(-horizontalRange);
                horizontalEffect.MaximumRelativeValue = NSNumber.FromFloat(horizontalRange);

                UIInterpolatingMotionEffect verticalEffect = new UIInterpolatingMotionEffect("center.y", UIInterpolatingMotionEffectType.TiltAlongVerticalAxis);
                verticalEffect.MinimumRelativeValue = NSNumber.FromFloat(-verticalRange);
                verticalEffect.MaximumRelativeValue = NSNumber.FromFloat(verticalRange);

                UIMotionEffectGroup motionEffectGroup = new UIMotionEffectGroup();
                motionEffectGroup.MotionEffects = new UIMotionEffect[] { horizontalEffect, verticalEffect };

                view.AddMotionEffect(motionEffectGroup);
            }
        }
コード例 #3
0
        public static void ApplyMotionEffects(this UIView view)
        {
            int SystemVersion = Convert.ToInt16 (UIDevice.CurrentDevice.SystemVersion.Split ('.') [0]);
            if (SystemVersion >= 7)
            {
                UIInterpolatingMotionEffect horizontalEffect = new UIInterpolatingMotionEffect("center.x", UIInterpolatingMotionEffectType.TiltAlongHorizontalAxis);
                horizontalEffect.MinimumRelativeValue = NSNumber.FromFloat(-10);
                horizontalEffect.MaximumRelativeValue = NSNumber.FromFloat(10);

                UIInterpolatingMotionEffect verticalEffect = new UIInterpolatingMotionEffect("center.6", UIInterpolatingMotionEffectType.TiltAlongVerticalAxis);
                verticalEffect.MinimumRelativeValue = NSNumber.FromFloat(-10);
                verticalEffect.MaximumRelativeValue = NSNumber.FromFloat(10);
                UIMotionEffectGroup motionEffectGroup = new UIMotionEffectGroup();
                motionEffectGroup.MotionEffects = new UIMotionEffect[] {horizontalEffect, verticalEffect};

                view.AddMotionEffect(motionEffectGroup);
            }
        }