【问题标题】:Change Backlight Brightness on iPhone Programmatically以编程方式更改 iPhone 上的背光亮度
【发布时间】:2010-09-26 21:12:22
【问题描述】:

SDK 是否提供任何方式来改变背光的亮度,或者暂时关闭它?

【问题讨论】:

标签: iphone backlight


【解决方案1】:

我正在尝试做同样的事情。 碰巧的是,互联网上有许多帖子为此提供了“解决方案”。

最详细的是here 这个比较多succinct

问题是我已经尝试过这些,它们都依赖于调用这个函数

GSEventSetBacklightLevel();

需要导入此标头

#import <GraphicsServices/GraphicsServices.h>

并且在 SDK 报告找不到头文件时导入失败。

我已经搜索了一些解决方案,但没有找到。 有一些关于“构建工具链”的讨论(有关我找到的最佳描述,请参见 here),但这似乎涉及完全绕过 SDK。相当激烈。

总结:这是可能的,但不能使用标准的 iPhone SDK。我想 SDK 的更新很快就会到来,应该允许它。

如果您找到任何其他解决方案,请告诉我。

【讨论】:

    【解决方案2】:

    没有。这在 SDK 中不可用。如果你觉得有用的话,我建议你file an enhancement request

    【讨论】:

      【解决方案3】:
      -(void)changeLight{
      
          GSEventSetBacklightLevel(float number);//number between 0.0 - 1.0
      }
      

      使用

      调用上述方法
      [self performSelector:@selector(changeLight) withObject:nil afterDelay:0.0];
      

      您可以通过从 /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/PrivateFrameworks/GraphicsServices.framework 拖放到您的 xcode 项目来添加私有框架。

      还要在您的 .h 文件中添加 #import "GraphicsServices.h" 标头。请记住:由于您使用的是私有框架,您的应用程序将在应用商店推送中拒绝

      【讨论】:

        【解决方案4】:

        在我的 SDK (5.0.1) 中,“GraphicsServices.h”似乎不再存在,但您可以自己声明它:

        void GSEventSetBacklightLevel(float level);
        

        请注意,链接器会报错,除非您在项目中包含框架 GraphicsServices.framework。

        关于你关于关闭背光的问题,我发现你可以通过将一个非常大的负数传递给 GSEventSetBacklightLevel 来做到这一点,如下所示:

        GSEventSetBacklightLevel(-INFINITY);
        

        在我的测试中,这将使屏幕完全变黑。

        请记住,如果您显示静态图形,即使在背光关闭的情况下,这仍可能导致 LCD 像素老化。并且这个调用如果提交到应用商店会导致拒绝。

        【讨论】:

          【解决方案5】:

          试试这个代码。希望对你有帮助...

          //在视图中会出现

          float prevBrightnessLevel = [UIScreen mainScreen].brightness;

          [UIScreen mainScreen].brightness = 1.0;

          //在视图中将消失

          [UIScreen mainScreen].brightness = prev亮度等级;

          【讨论】:

            猜你喜欢
            • 2012-08-31
            • 1970-01-01
            • 2013-08-21
            • 1970-01-01
            • 2011-03-15
            • 1970-01-01
            • 2012-02-14
            • 2011-04-13
            • 1970-01-01
            相关资源
            最近更新 更多