コード例 #1
0
        public override void TouchesEnded(NSSet touches, UIEvent evt)
        {
            base.TouchesEnded(touches, evt);

            if (selectedPoint == null)
            {
                return;
            }

            UISnapBehavior snap = new UISnapBehavior(selectedPoint, originalPosition);

            snap.Damping = 0.2f;

            UIPushBehavior push = new UIPushBehavior(new IUIDynamicItem[] { selectedPoint }, UIPushBehaviorMode.Instantaneous);

            push.PushDirection = new CGVector(0.0f, -1.0f);
            push.Magnitude     = 0.001f;

            UIDynamicAnimator animator = new UIDynamicAnimator();

            animator.AddBehavior(snap);
            animator.AddBehavior(push);

            selectedPoint.Animator = animator;
        }
コード例 #2
0
        public override void ViewDidAppear(bool animated)
        {
            base.ViewDidAppear(animated);

            TKChartVisualPoint[] points = chart.VisualPointsForSeries(chart.Series [0]);
            originalValues = new List <CGPoint> ();
            foreach (TKChartVisualPoint p in points)
            {
                originalValues.Add(p.CGPoint);
            }
            TKChartVisualPoint point = points[4];

            UISnapBehavior snap = new UISnapBehavior(point, point.Center);

            snap.Damping = 0.2f;

            UIPushBehavior push = new UIPushBehavior(new IUIDynamicItem[] { point }, UIPushBehaviorMode.Instantaneous);

            push.PushDirection = new CGVector(0.0f, -1.0f);
            push.Magnitude     = 0.003f;

            UIDynamicAnimator animator = new UIDynamicAnimator();

            animator.AddBehavior(snap);
            animator.AddBehavior(push);

            point.Animator = animator;
        }
コード例 #3
0
        public override void TouchesEnded(NSSet touches, UIEvent evt)
        {
            base.TouchesEnded(touches, evt);

            if (selectedPoint == null)
            {
                return;
            }

            UITouch touch      = (UITouch)touches.AnyObject;
            CGPoint touchPoint = touch.LocationInView(chart.PlotView);
            CGPoint delta      = new CGPoint(originalLocation.X, originalLocation.Y - touchPoint.Y);

            UISnapBehavior snap = new UISnapBehavior(selectedPoint, originalPosition);

            snap.Damping = 0.2f;

            UIPushBehavior push = new UIPushBehavior(new IUIDynamicItem[] { selectedPoint }, UIPushBehaviorMode.Instantaneous);

            push.PushDirection = new CGVector(0.0f, delta.Y > 0 ? -1.0f : -1.0f);
            push.Magnitude     = 0.001f;

            UIDynamicAnimator animator = new UIDynamicAnimator();

            animator.AddBehavior(snap);
            animator.AddBehavior(push);

            selectedPoint.Animator = animator;
        }
コード例 #4
0
        private void releaseSnap()
        {
            lock (spiderAnimator)
            {
                spiderAnimator.RemoveBehavior(dragging);
                spiderAnimator.AddBehavior(gravity);

                dragging = null;
            }
        }
コード例 #5
0
        void SnapImageIntoPlace(PointF touchPoint)
        {
            if (snapRect.Contains(touchPoint))
            {
                if (snap != null)
                {
                    animator.RemoveBehavior(snap);
                }

                snap = new UISnapBehavior(imageView, snapPoint);
                animator.AddBehavior(snap);
            }
        }
コード例 #6
0
        private void snapTo(NSSet touches)
        {
            if (spiderView == null)
            {
                return;
            }

            var touch = (UITouch)touches.First();

            lock (spiderAnimator)
            {
                if (dragging != null)
                {
                    spiderAnimator.RemoveBehavior(dragging);
                }

                var position = touch.LocationInView(this);
                dragging = new UISnapBehavior(spiderView, position);

                spiderAnimator.RemoveBehavior(gravity);
                spiderAnimator.AddBehavior(dragging);
            }
        }
コード例 #7
0
		public override void TouchesEnded (NSSet touches, UIEvent evt)
		{
			base.TouchesEnded (touches, evt);

			if (selectedPoint == null) {
				return;
			}

			UISnapBehavior snap = new UISnapBehavior(selectedPoint, originalPosition);
			snap.Damping = 0.2f;

			UIPushBehavior push = new UIPushBehavior(new IUIDynamicItem[] { selectedPoint }, UIPushBehaviorMode.Instantaneous);
			push.PushDirection = new CGVector(0.0f, -1.0f);
			push.Magnitude = 0.001f;

			UIDynamicAnimator animator = new UIDynamicAnimator();
			animator.AddBehavior(snap);
			animator.AddBehavior(push);

			selectedPoint.Animator = animator;
		}
コード例 #8
0
        public override void ViewDidAppear(bool animated)
        {
            base.ViewDidAppear (animated);

            TKChartVisualPoint[] points = chart.VisualPointsForSeries (chart.Series [0]);
            originalValues = new List<CGPoint> ();
            foreach (TKChartVisualPoint p in points) {
                originalValues.Add (p.CGPoint);
            }
            TKChartVisualPoint point = points[4];

            UISnapBehavior snap = new UISnapBehavior (point, point.Center);
            snap.Damping = 0.2f;

            UIPushBehavior push = new UIPushBehavior (new IUIDynamicItem[] { point }, UIPushBehaviorMode.Instantaneous);
            push.PushDirection = new CGVector (0.0f, -1.0f);
            push.Magnitude = 0.003f;

            UIDynamicAnimator animator = new UIDynamicAnimator();
            animator.AddBehavior(snap);
            animator.AddBehavior(push);

            point.Animator = animator;
        }
コード例 #9
0
        public override void TouchesEnded(NSSet touches, UIEvent evt)
        {
            base.TouchesEnded (touches, evt);

            if (selectedPoint == null) {
                return;
            }

            UITouch touch = (UITouch)touches.AnyObject;
            CGPoint touchPoint = touch.LocationInView(chart.PlotView);
            CGPoint delta = new CGPoint(originalLocation.X, originalLocation.Y - touchPoint.Y);

            UISnapBehavior snap = new UISnapBehavior(selectedPoint, originalPosition);
            snap.Damping = 0.2f;

            UIPushBehavior push = new UIPushBehavior(new IUIDynamicItem[] { selectedPoint }, UIPushBehaviorMode.Instantaneous);
            push.PushDirection = new CGVector(0.0f, delta.Y > 0 ? -1.0f : -1.0f);
            push.Magnitude = 0.001f;

            UIDynamicAnimator animator = new UIDynamicAnimator();
            animator.AddBehavior(snap);
            animator.AddBehavior(push);

            selectedPoint.Animator = animator;
        }