在UIView/UIWindow上应用过滤器以修改基础视图呈现

Pet*_*jas 6 uikit uiview uiwindow ios4 ios

我正试图为我的应用程序制作一个"黑暗模式",我想以一种非常简单的方式做到这一点.有没有办法应用过滤器或在我的其他视图上创建另一个视图,使它们看起来倒置 - 很像iOS 3.2+上的"辅助功能"?我知道Core Image过滤器在iPhone上不起作用,但这对我来说并不是什么大问题 - 只要有一种方法可以应用不同类型的过滤器.

这在iPhone上可行吗?Apple如何做到这一点?

Cal*_*leb 1

听起来您正在考虑在整个用户界面上放置一个填充深色的半透明视图。如果是这种情况,那么您应该阅读转发触摸事件以获取有关所涉及问题的讨论。

另一种方法是更改​​用于绘制视图的颜色和图像集。

如果您正在处理自定义视图,这两种方案都会更容易并且效果更好。如果您使用的是覆盖层,上面链接的文档解释了标准 UI 元素不支持事件转发。如果您更改颜色,那么...根据您使用的 UI 元素,可能会也可能不会替换您自己的图像和颜色。