- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
当 AVSpeechSynthesizer
正在说一个句子时,UI 发生变化(例如 ViewController
被推送,UIButton
的标题已更改,...),AVSpeechSynthesizer
出现卡顿。
我所有的 UI 更改都在 dispatch_async
block 中。我必须这样做,否则 UI 无法正确更新。
dispatch_async(dispatch_get_main_queue(), ^{
[self.aButton setTitle:@"title" forState:UIControlStateNormal];
});
我已经尝试在主线程和后台线程上运行 speakUtterance
,但没关系,口吃一直在发生。
如果 speakUtterance
期间没有 UI 变化,则完全没有问题。
这是 AVSpeechSynthesizer
中的错误吗?我是否遗漏了有关线程的内容?
最佳答案
好的,我知道发生了什么。
调用 AVSpeechSynthesizer
的函数每次都执行这段代码:
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord
withOptions:AVAudioSessionCategoryOptionDefaultToSpeaker | AVAudioSessionCategoryOptionDuckOthers
error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];
事实证明这完全没有必要,并且会导致 AVSpeechSynthesizer
出现打嗝和卡顿现象。
所以这毕竟与在演讲期间做 UI 相关的事情无关。
关于ios - UI 更新期间 AVSpeechSynthesizer 卡顿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38099904/
我在 Java Swing 中移动 block 时遇到卡顿问题。 下面的代码将显示该问题。运行时,我希望盒子移动平稳,没有任何卡顿。 Swing中有没有办法实现这一点?或者我应该继续使用 JavaFX
在我的应用程序中,我在主要 Activity 中实现了滑动菜单抽屉。菜单的设计是自定义的,单击菜单中的列表项会打开一个 fragment 。 private class SlideMenuClickL
我尝试制作ImageView 的扩展布局动画和平移 动画,但我同时启动它们时它们看起来有点滞后。我在真实设备 Moto X(2013) 上对其进行了测试。不确定更强大的设备,因为默认情况下我所有的模拟
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
首先,让我澄清一些事情: 我的显示器频率为 60 赫兹 我将我的 FPS 限制在 60,它似乎工作正常 我激活了双缓冲标志 我自己制作了一个后台缓冲区,并确保绘制到它,然后再绘制到屏幕 这个问题在全屏
我在以下测试页面上使用 Flexslider(旧版本 1.0,支持 jquery 1.4.8):http://www.showstyle.lu/service/startv2/ 如您所见, slide
我有一项服务可以在 AysncTask 的 doInBackground() 方法中下载一个大文件: data = new byte[8192]; output = new FileOutputStr
我有一个动画师,infinite_rotation,定义为: 当我不再需要它的时间(时间不确定)到来时,我调用 infinite_animator.cancel()。然后在其布局容器上播
向元素添加过渡并更改宽度和/或高度以及 -webkit-transform:translate3d 时,过渡动画会断断续续。它似乎首先为宽度/高度变化设置动画,并对其进行部分平移,然后捕捉到最终平移位
当 AVSpeechSynthesizer 正在说一个句子时,UI 发生变化(例如 ViewController 被推送,UIButton的标题已更改,...),AVSpeechSynthesizer
在 Firefox 11 中,我在使用 HTML5 的 Canvas 和翻译的一些基本动画中遇到偶尔的抖动/犹豫/卡顿。 请看下面的例子... http://jsfiddle.net/ACRdx/ 上
问题 我正在尝试让 Canvas 上的图像从左向右平滑移动。它在 Chrome/Safari 上还不错(仍然有点卡顿),但在多台机器上的 Firefox 中有明显的卡顿(在 Windows 和 Mac
我正在使用 Ariel Flesler's ScrollTo script在 this page .我在页面底部有两个链接,可以滚动到页面顶部(其中一个还可以打开联系表格)。我注意到在滚动开始时页面顶
我一直在尝试创建一个充满卡片 View 的回收站 View 。目前,我正在使用来自 this tutorial 的 Recycler View并加载 14 张不同的图像。专业品质的图像大小范围从 13
我创建了一个带有自定义单元格的 UItableview。这些单元格有两个 UILabel 和一个在后台线程上调用图像的 ImageView 。这些单元首先加载一些占位符数据,以防 API 调用时间较长
用例 我有 68 个钢琴样本,每个样本大约。 174 kB,Ogg 数据,Vorbis 音频,立体声,s16,44100 Hz,352 kb/s,4 秒。 我需要同时演奏它们的不同组合(音乐术语:和弦
喂, https://jsfiddle.net/jbwq6y87/7/ #box { width: 500px; height: 500px; transition: 0.5s; ov
这是一个演示: http://nushuttles.com/chords/player.html 顶部的方 block 是用 Flash 渲染的,下面的方 block 是用 Javascript 制作
我有一个 RecyclerView 这是一个垂直滚动的项目列表。每个列表项在 Lite Mode 中包含一个 Google Maps V2 MapView .我正在利用这个返回位图而不是完整 map
在我的应用程序中,一旦用户进入它,我在仪表板上有太多动画只发生一次 - 即当用户第一次进入应用程序时 - 我在 viewDidAppear 中以这种方式执行动画,调用 upperViewAnimati
我是一名优秀的程序员,十分优秀!