【发布时间】:2015-09-25 01:52:12
【问题描述】:
经过一番谷歌搜索,我可以理解当设备远离/靠近用户时用于打开/关闭屏幕的“接近传感器”。我看了this video(从第 30 秒开始观看)并对这些很酷的东西感到惊讶。我想在我的应用中实现它。
但我知道当proximityMonitoringEnabled 是YES 时,没有可用的公共API 可以保护屏幕锁定。那么上面的app是怎么做到的呢?
为了清楚起见,我复制了一些代码。
启用接近传感器:
[[UIDevice currentDevice] setProximityMonitoringEnabled:YES];
为传感器变化设置观察器:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(sensorStateMonitor:) name:@"UIDeviceProximityStateDidChangeNotification" object:nil];
最后你可以通过这个方法找到接近传感器的状态:
- (void)sensorStateMonitor:(NSNotificationCenter *)notification
{
if ([[UIDevice currentDevice] proximityState] == YES)
{
NSLog(@"Device is close to user.");
}
else
{
NSLog(@"Device is not closer to user.");
}
}
问题:
我想在调用“设备靠近用户”状态时显示一些视图。如果调用了“设备不靠近用户”状态,则希望删除视图。
所以我在sensorStateMonitor: 方法中添加了一个视图并删除了。但是该视图仅在几分之一秒内可见,并且屏幕熄灭了。
我可以防止屏幕自动关闭吗?
只是一头雾水!!
【问题讨论】:
-
嗨@Confused,我怎样才能防止屏幕自动关闭有什么解决办法吗?如果是的话,你能帮我解决这个问题吗?
标签: ios screen monitoring proximitysensor