差分

ナビゲーションに移動 検索に移動

Xamarin.Mac/アクセシビリティの設定変更を検知する

1,490 バイト追加, 2015年10月15日 (木) 15:28
ページの作成:「==概要== Mac OS Xのアクセシビリティの設定が変更されたのを検知することができれば、アプリ実行中にアクセシビリティの許...」
==概要==
[[Mac OS X]]のアクセシビリティの設定が変更されたのを検知することができれば、アプリ実行中にアクセシビリティの許可が取り消されたかを確認し、必要に応じて警告を出すなどの挙動を実現できる。

==実装==
[[Mac OS X]]のアクセシビリティの設定が変更されたのを検知するにはNSDistributedNotificationCenterで「"com.apple.accessibility.api"」を監視してやればよい。
DefaultCenterプロパティの型が何故かNSObjectとなっているのでキャストを忘れずに。
<source lang="csharp">
var dnc = (NSDistributedNotificationCenter)NSDistributedNotificationCenter.DefaultCenter;

dnc.AddObserver("com.apple.accessibility.api", (notification) => {
Console.WriteLine(notification);
});
</source>
上記はあくまで「アクセシビリティの設定が変更された」という通知が届くだけであり、どの設定が変更されたかまでは通知されない。

主な用途だと思われる自身のアクセシビリティを確認する方法は下記を参照。
*[[Xamarin.Mac/アクセシビリティの許可の有無を取得する]]

==関連項目==
*[[Xamarin.Mac/アクセシビリティの許可の有無を取得する]]
*[[Xamarin.Mac/Global Event Monitorでキー入力を監視する]]

==参考文献==
{{reflist}}

{{stub}}

[[category:Xamarin.Mac]]
[[category:MonoMac]]
匿名利用者

案内メニュー