14

我在我的一个应用程序中遇到了一个相当烦人的错误。在 iOS7 中,当我按住 UITextView 或 UITextField 以调出放大镜时,放大区域中没有显示任何内容。这个问题是应用程序范围内的,唯一出现在圆圈区域的元素是键盘本身(当我将手指向下拖动到它的顶部时)。

我已经尝试了从只有一个 UITextView 的视图控制器到 UIWebView 的所有内容,问题是应用程序范围的。

放大镜在 iOS6 设备和 iOS7 模拟器上按预期工作。但不是在我用运行 iOS7 测试过的任何设备上。

任何帮助将不胜感激。

在此处输入图像描述

4

5 回答 5

15

我通过在 appDelegate 中将主窗口的 windowLevel 设置为浮点值 1.2 来解决此问题:

self.window.windowLevel = 1.2;

这是 iOS7 的一种技巧,可将主窗口的默认级别 UIWindowLevelNormal (1.0) 提高到 1.2

于 2013-12-16T19:03:13.627 回答
6

一次使用多个窗口时遇到同样的问题。为每个窗口设置正确的 .windowLevel 值以进行正确的 z 排序解决了该问题。

于 2013-10-31T09:04:12.380 回答
2

我们有一个类似的问题,我们在现有窗口的顶部显示一个 UIWindow,如果它们具有相同的 windowLevel,那么放大镜会显示添加的第一个窗口。

例子:

[applicationWindow (windowLevel = 0] <------------- [customWindow (windowLevel = 0)]

customWindow 可以很好地呈现在 applicationWindow 之上...但是在自定义窗口中的文本字段上显示的放大镜会呈现 applicationWindow 的内容。

[applicationWindow (windowLevel = 1] <------------- [customWindow (windowLevel = 1)]

结果相同。customWindow 可以很好地呈现在 applicationWindow 之上...但是在自定义窗口中的文本字段上显示的放大镜会呈现 applicationWindow 的内容。

[applicationWindow (windowLevel = 0] <------------- [customWindow (windowLevel = 1.01)]

customWindow 正确渲染,放大镜的内容正确渲染。

我们解决这个问题的方法是在将 customWindow. 谢谢@user2940692,你的答案可能应该是被接受的......如果你想要它,我会把我们的案例作为一个问题发布,你可以回答它,我会给你信用。

于 2014-02-12T19:06:04.063 回答
0

我遇到过同样的问题。我发现在 Project -> Targets -> General 中,“主界面”中列出了一个 nib。一旦我删除它工作正常。我还尝试设置窗口级别,它有效,但它只是掩盖了我真正的问题。

于 2014-09-19T02:23:10.443 回答
0

如果您没有从上述解决方案中获得任何帮助,我发现了另一个可能导致这种情况发生的问题。我有一个在 AppDelegate 中初始化的UIWindow对象。nib该视图的背景颜色为[UIColor whiteColor]. 将其设置为[UIColor clearColor]将解决此问题。

于 2015-06-17T12:13:44.510 回答