我有大约20个应用程序,屏幕上有一张图片,屏幕顶部有一个麦克风和扬声器,因此人们可以录制他们的声音并播放。所有这些在设备和模拟器上都能正常工作。
我正在完成一个使用文本而不是图片的新应用程序,我在屏幕上放置了启用滚动的UIWebView或UIScrollView。当我在6.1中的模拟器中运行时,两个屏幕都显示屏幕上的麦克风和扬声器的UIButtons。在其他版本的模拟器或运行iOS 5.1.1或iOS 6.1.2的设备上都没有出现录制按钮。
我上周刚更新了所有应用程序,它们在模拟器和设备上运行正常,我没有得到用户的反馈,说明缺少录制按钮。我能想到的这个应用程序的唯一区别是它使用ScrollView。如果我查看屏幕上应该有哪些视图,(NSLog(@“%@”,self.view.subviews);)麦克风和扬声器已放置在那里,它们只是不可见。它们是隐藏按钮顶部的不透明按钮。这个应用程序中没有使用10000的那些。
"<UIWebView: 0x28dd40; frame = (30 100; 964 624); autoresize = W+H; layer = <CALayer: 0x28ddd0>>",
"<UIButton: 0x25fac0; frame = (0 137; 90 90); hidden = YES; opaque = NO; layer = <CALayer: 0x25fb50>>",
"<UIButton: 0x283210; frame = (0 137; 90 90); opaque = NO; layer = <CALayer: 0x2832a0>>",
"<UIButton: 0x284390; frame = (13.5 317; 90 90); hidden = YES; opaque = NO; layer = <CALayer: 0x284420>>",
"<UIButton: 0x2855d0; frame = (13.5 317; 90 90); opaque = NO; layer = <CALayer: 0x285660>>",
"<UIButton: 0x286660; frame = (13.5 317; 90 90); opaque = NO; layer = <CALayer: 0x2866f0>>",
"<UIButton: 0x287940; frame = (10000 3; 90 90); hidden = YES; opaque = NO; layer = <CALayer: 0x2879d0>>",
"<UIButton: 0x288b60; frame = (10000 3; 90 90); opaque = NO; layer = <CALayer: 0x288bf0>>",
"<UIButton: 0x289cd0; frame = (10000 3; 90 90); hidden = YES; opaque = NO; layer = <CALayer: 0x289d60>>",
"<UIButton: 0x28b010; frame = (10000 3; 90 90); opaque = NO; layer = <CALayer: 0x28b0a0>>",
"<UILabel: 0x28c2f0; frame = (411 5; 202 16); text = ' '; clipsToBounds = YES; userInteractionEnabled = NO; layer = <CALayer: 0x28c390>>"
当我在屏幕上放置WebView和ScrollView时,我使用
[self.parentView insertSubview:self.webView atIndex:0]; and
[self.parentView insertSubview:self.quizView atIndex:0];
所以他们应该在后台的第一层。即便如此,他们的界限也不会碰到录音按钮。滚动会做一些我不知道的事情,还是我应该看的其他地方?
答案 0 :(得分:0)
事实证明,按钮中使用的图像未包含在目标中。
出于某种原因,这不会导致运行6.1的模拟器出现问题,但在其他模拟器中也会出现问题。由于未知原因,在设备或其他模拟器版本上运行时无法找到图像时未生成错误。