我在iOS应用程序' Sleep Cycle Alarm Clock'当iPhone面向屏幕时(朝向地板),他们设法调暗屏幕的背光。我一直在互联网上搜索,无法找到提供此功能的API。
我猜测他们通过测量设备上的重力加速度并相应调暗背光来实现这一点,我没有遇到任何问题。我只是不知道他们是如何使背光变暗的(包括状态栏!)。它不是覆盖在超视图上的半透明黑色UIView,灯光肯定会关闭。
检测不是问题,而是我不知道该怎么做的调光。
有人能指出我正确的方法/ API文档吗?我使用的是iOS 6 SDK。
由于
编辑:
对不起,伙计们,看来我错了。进一步的调查让我相信它们没有使背光变暗。说明暂时停留在超级视图上。我认为它们实际上覆盖了黑色图像并删除了状态栏。我很抱歉!为了绕过定位检测的方向锁,我认为他们使用加速度计。答案 0 :(得分:0)
可以使用UIDevice orientation
检测设备是否面朝下。当屏幕朝向地板时,这将返回UIDeviceOrientationFaceDown
。
请查看UIScreen
类,了解与亮度相关的几种方法。
答案 1 :(得分:0)
试试这个:
[[UIScreen mainScreen] setBrightness:0.5]; //Any value you think works
有关UIScreen的更多信息以及使用它可以做些什么,请查看文档:
编辑:请阅读其他答案的评论,这种方法会导致什么样的问题?