Exemple #1
0
        public void HapticFeedbackGenErrorAsync()
        {
            var feedback = new UINotificationFeedbackGenerator();

            feedback.Prepare();
            switch ((UIDevice.CurrentDevice.ValueForKey(new Foundation.NSString("_feedbackSupportLevel")) as Foundation.NSNumber).Int16Value)
            {
            case 1:
                using (var feedbackLow = new UISelectionFeedbackGenerator())
                {
                    feedbackLow.SelectionChanged();
                }
                break;

            case 2:
            {
                feedback.NotificationOccurred(UINotificationFeedbackType.Error);
            }
            break;

            default:
                Vibration.Vibrate(40);
                Task.Delay(20);
                Vibration.Vibrate(40);
                break;
            }
        }
Exemple #2
0
 public void Run()
 {
     if (uiSelection == null)
     {
         uiSelection = new UISelectionFeedbackGenerator();
         uiSelection.Prepare();
     }
     uiSelection.SelectionChanged();
 }
Exemple #3
0
        partial void SelectionAction(Foundation.NSObject sender)
        {
            // Initialize feedback
            var selection = new UISelectionFeedbackGenerator();

            selection.Prepare();

            // Trigger feedback
            selection.SelectionChanged();
        }
 public void ActivateFeedback(bool activate)
 {
     if (activate)
     {
         FeedbackGenerator = new UISelectionFeedbackGenerator();
         FeedbackGenerator.Prepare();
     }
     else
     {
         FeedbackGenerator = null;
     }
 }
Exemple #5
0
        public void Feedback(HapticEffect effect, EffectMode mode = EffectMode.Default)
        {
            if (mode == EffectMode.Off ||
                effect == HapticEffect.None ||
                !UIDevice.CurrentDevice.CheckSystemVersion(10, 0))
            {
                return;
            }
            if (mode == EffectMode.Default && Forms9Patch.Settings.HapticEffectMode == EffectMode.Off)
            {
                return;
            }
            switch (effect)
            {
            case HapticEffect.Selection:
            {
                using (var selection = new UISelectionFeedbackGenerator())
                {
                    selection.Prepare();
                    selection.SelectionChanged();
                }
            }
            break;

            case HapticEffect.LightImpact:
            {
                using (var impact = new UIImpactFeedbackGenerator(UIImpactFeedbackStyle.Light))
                {
                    impact.Prepare();
                    impact.ImpactOccurred();
                }
            }
            break;

            case HapticEffect.MediumImpact:
            {
                using (var impact = new UIImpactFeedbackGenerator(UIImpactFeedbackStyle.Medium))
                {
                    impact.Prepare();
                    impact.ImpactOccurred();
                }
            }
            break;

            case HapticEffect.HeavyImpact:
            {
                using (var impact = new UIImpactFeedbackGenerator(UIImpactFeedbackStyle.Heavy))
                {
                    impact.Prepare();
                    impact.ImpactOccurred();
                }
            }
            break;

            case HapticEffect.ErrorNotification:
            {
                // Initialize feedback
                using (var notification = new UINotificationFeedbackGenerator())
                {
                    notification.Prepare();
                    notification.NotificationOccurred(UINotificationFeedbackType.Error);
                }
            }
            break;

            case HapticEffect.WarningNotification:
            {
                // Initialize feedback
                using (var notification = new UINotificationFeedbackGenerator())
                {
                    notification.Prepare();
                    notification.NotificationOccurred(UINotificationFeedbackType.Warning);
                }
            }
            break;

            case HapticEffect.SuccessNotification:
            {
                // Initialize feedback
                using (var notification = new UINotificationFeedbackGenerator())
                {
                    notification.Prepare();
                    notification.NotificationOccurred(UINotificationFeedbackType.Success);
                }
            }
            break;
            }
        }
Exemple #6
0
 public void Release()
 {
     m_generator = null;
 }
Exemple #7
0
 public PlatformFeedbackGenerator()
 {
     m_generator = new UISelectionFeedbackGenerator();
 }