RSS

iPhone:接近センサ(proximityState)の使い方

前エントリのiThereminで接近センサを確認するためにサンプルを実装したので,そのメモです.接近センサは非常に簡単に使うことができますが,使い道が難しいです(後述).

まず,接近センサを使うための呪文をviewDidLoadとかに書く.
[UIDevice currentDevice].proximityMonitoringEnabled = YES;

接近センサの状態変化のnotificationの受け取りを設定する.仮に受け取った時の呼び出しメソッドをactionByProximityに過程する.これは前記の直後ぐらいに書く.
[[NSNotificationCenter defaultCenter]
addObserver:self selector:@selector(actionByProximity) name:UIDeviceProximityStateDidChangeNotification
object:nil];

呼び出されるメソッドを設定する.[UIDevice currentDevice].proximityStateは,接近するとYES(1)を,離れるとNO(0)を返します.
-(void)actionByProximity
{
NSLog(@"%d", [UIDevice currentDevice].proximityState);
}

このサンプルコードです.使用条件は自己責任です.このサンプルをアプリに参考・組込する/した方は可能ならばそのアプリを教えてください.下の動画か,実機でビルドすれば分かると思いますが,proximityStateがYESのときは,画面がロックされます.ちなみに左上で光っているのが,赤外線センサ=接近センサです.



つまり,視覚的なスイッチング用途には使いづらくなっています(本来の用途が誤作動を防ぐためのロックなのでしかたないですが).オーディオ系などには使えると思いますが,使う場面を考える必要があります.

Bookmark and Share

0 コメント: