示例#1
0
        public static void ConfigureAccessibilityFeatures(UIGuidedAccessAccessibilityFeature features, bool enabled, UIGuidedAccessConfigureAccessibilityFeaturesCompletionHandler completionHandler)
        {
            if (completionHandler == null)
            {
                throw new ArgumentNullException(nameof(completionHandler));
            }

            unsafe {
                BlockLiteral *block_ptr_completionHandler;
                BlockLiteral  block_completionHandler;
                block_completionHandler     = new BlockLiteral();
                block_ptr_completionHandler = &block_completionHandler;
                block_completionHandler.SetupBlockUnsafe(UIGuidedAccessConfigureAccessibilityFeaturesTrampoline.Handler, completionHandler);

                UIGuidedAccessConfigureAccessibilityFeatures((nuint)(ulong)features, enabled, (IntPtr)block_ptr_completionHandler);
                block_ptr_completionHandler->CleanupBlock();
            }
        }
示例#2
0
        public static Task <(bool Success, NSError Error)> ConfigureAccessibilityFeaturesAsync(UIGuidedAccessAccessibilityFeature features, bool enabled)
        {
            var tcs = new TaskCompletionSource <(bool, NSError)> ();

            ConfigureAccessibilityFeatures(features, enabled, (success_, error_) => tcs.SetResult((success_, error_)));
            return(tcs.Task);
        }