- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当用户在 UITextView 中通过语音输入文本时应用程序崩溃,
崩溃方法
通过单击 TextView 作为第一响应者,然后按键盘上的麦克风按钮,然后说出一些内容,然后按“完成”,应用程序崩溃..
在我的例子中, uitextview 没有做任何特别的事情..
控制台输出
*
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Attempt to mutate immutable object with deleteCharactersInRange:'
First throw call stack: (0x19443c1c0 0x192e7455c 0x19443c108 0x1943d9b18 0x19a58d138 0x194e1a3c4 0x1943fd958 0x1943fb9e4 0x194e1a218 0x19aa9aac8 0x19aa9b270 0x19aa9a0b4 0x19aa97680 0x19aa979f0 0x19aa9afd0 0x19aa9b50c 0x19cdbf800 0x19cdbf064 0x19cdbf74c 0x19cdc4354 0x1005e925c 0x1005e921c 0x1005ee284 0x1943e9f2c 0x1943e7b18 0x194316048 0x195d99198 0x19a2e9628 0x19a2e4360 0x1001e03c4 0x1932f85b8) libc++abi.dylib: terminating with uncaught exception of type NSException
在进一步调试时,我得到了(通过在控制台中输入 bt)它给了我
* thread #1: tid = 0x645a4, 0x000000019340a014 libsystem_kernel.dylib`__pthread_kill + 8, queue =
'com.apple.main-thread', stop reason = signal SIGABRT frame #0: 0x000000019340a014 libsystem_kernel.dylib
__pthread_kill + 8
pthread_kill + 112 frame #2: 0x000000019337e3f4 libsystem_c.dylib
frame #1: 0x00000001934d1460 libsystem_pthread.dylibabort + 140
abort_message + 132 frame #4: 0x0000000192e66cc0 libc++abi.dylib
frame #3: 0x0000000192e492d4 libc++abi.dylibdefault_terminate_handler() + 304
_objc_terminate() + 124 frame #6: 0x0000000192e6366c libc++abi.dylib
frame #5: 0x0000000192e74844 libobjc.A.dylibstd::__terminate(void (*)()) + 16
__cxa_throw + 136 frame #8: 0x0000000192e74690 libobjc.A.dylib
frame #7: 0x0000000192e62f84 libc++abi.dylibobjc_exception_throw + 364
+[NSException raise:format:] + 116 frame #10: 0x00000001943d9b18 CoreFoundation
frame #9: 0x000000019443c108 CoreFoundationmutateError + 132
-[UIScrollView description] + 104 frame #12: 0x0000000194e1a3c4 Foundation
frame #11: 0x000000019a58d138 UIKit_NSDescriptionWithLocaleFunc + 108
__CFStringAppendFormatCore + 7996 frame #14: 0x00000001943fb9e4 CoreFoundation
frame #13: 0x00000001943fd958 CoreFoundation_CFStringCreateWithFormatAndArgumentsAux2 + 244
+[NSString stringWithFormat:] + 68 frame #16: 0x000000019aa9aac8 UIKit
frame #15: 0x0000000194e1a218 Foundation-[UIDictationController insertSerializedDictationResult:withCorrectionIdentifier:] + 144
__98-[UIDictationController finishDictationRecognitionWithPhrases:languageModel:correctionIdentifier:]_block_invoke + 464 frame #18: 0x000000019aa9a0b4 UIKit
frame #17: 0x000000019aa9b270 UIKit-[UIDictationController performIgnoringDocumentChanges:] + 48
-[UIDictationController _runFinalizeOperation:] + 56 frame #20: 0x000000019aa979f0 UIKit
frame #19: 0x000000019aa97680 UIKit-[UIDictationController setState:] + 612
-[UIDictationController finishDictationRecognitionWithPhrases:languageModel:correctionIdentifier:] + 552 frame #22: 0x000000019aa9b50c UIKit
frame #21: 0x000000019aa9afd0 UIKit-[UIDictationController dictationConnection:didRecognizePhrases:languageModel:correctionIdentifier:]
__105-[AFDictationConnection _tellSpeechDelegateDidRecognizeSpeechPhrases:languageModel:correctionIdentifier:]_block_invoke + 80 frame #24: 0x000000019cdbf064 AssistantServices
+ 204
frame #23: 0x000000019cdbf800 AssistantServices-[AFDictationConnection
-[AFDictationConnection _tellSpeechDelegateDidRecognizeSpeechPhrases:languageModel:correctionIdentifier:] + 356 frame #26: 0x000000019cdc4354 AssistantServices
_dispatchCallbackGroupBlock:] + 240
frame #25: 0x000000019cdbf74c AssistantServices__101-[AFDictationConnectionServiceDelegate
_dispatch_call_block_and_release + 24 frame #28: 0x00000001005e921c libdispatch.dylib
speechDidRecognizePhrases:usingSpeechModel:correctionContext:]_block_invoke
+ 76
frame #27: 0x00000001005e925c libdispatch.dylib_dispatch_client_callout + 16
_dispatch_main_queue_callback_4CF + 1200 frame #30: 0x00000001943e9f2c CoreFoundation
frame #29: 0x00000001005ee284 libdispatch.dylib__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
__CFRunLoopRun + 1660 frame #32: 0x0000000194316048 CoreFoundation
frame #31: 0x00000001943e7b18 CoreFoundationCFRunLoopRunSpecific + 444
GSEventRunModal + 180 frame #34: 0x000000019a2e9628 UIKit
frame #33: 0x0000000195d99198 GraphicsServices-[UIApplication _run] + 684
UIApplicationMain + 208 * frame #36: 0x00000001001e03c4 motto-mobile
frame #35: 0x000000019a2e4360 UIKitmain(argc=1, argv=0x000000016fdd3ab8) + 124 at main.m:16
start + 4
frame #37: 0x00000001932f85b8 libdyld.dylib
使用的代码
@property(strong,nonatomic) UITextView *addressTextView;
- (void)viewDidLoad {
[super viewDidLoad];
addressTextView.delegate = self;
addressTextView.text = [self.dictionaryEditObject objectForKey:@"location"];
}
-(void)textViewDidBeginEditing:(UITextView *)textView
{
}
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
NSLog(@"textViewShouldBeginEditing:");
return YES;
}
-(void)textViewDidEndEditing:(UITextView *)textView
{
NSLog(@"textViewDidEndEditing");
}
试穿过iOS:10.2、9.3设备:iPad、iPod、iPhone 5s每个设备上都会崩溃
任何帮助将不胜感激谢谢
最佳答案
要做的第一件事是子类化 UITextView 并在该子类中重写 funcaccessibilityActivate() -> Bool。然后创建一个委托(delegate)来处理 TextView 激活时发生的情况,并通过重写的方法调用它。
然后根据 UIAccessibilityIsVoiceOverRunning() 设置 TextView 的委托(delegate),因此如果正在运行语音,则将 UITextViewDelegate 设置为 nil,这可以防止崩溃发生,然后激活操作由您在上面的子类中重写的方法处理。最后,为 UIAccessibilityVoiceOverStatusChanged 设置一个监听器,并在从关闭到打开时将 UITextViewDelegate 设置为 nil,在相反的情况下将其设置为原始委托(delegate)类。
关于ios - 当用户通过语音输入时,应用程序崩溃 uitextview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44405172/
我有一个程序: [textView setFont:[UIFont fontWithName:@"ArialMT" size:20]]; [textVi
我正在 UITextViewDelegate 中处理代码。那里的每个函数都会接收接收事件的 UITextView 实例,例如: - (void)textViewDidBeginEditing:(UIT
我想在默认图像附件菜单选项(复制图像、保存到相机胶卷)中添加另一个菜单选项。请注意,如果 textView 未处于编辑模式,则当您长按嵌入在 UITextView 中的图像时会显示这些选项。 我已经尝
我想尝试禁用 UITextTapRecognizer,我认为它是 UITextView 的内置属性,因为我怀疑它会干扰我想要实现的点击手势识别器。这怎么可能? 感谢阅读! 最佳答案 我不确定这是否直接
首先我使用这个 UITextView 类 TextView 类.h @interface textViewClass : UITextView TextView 类.m @implementation
我正在开发一个应用程序,我需要为大文本放置一个 UITextView。我有一个尺寸为 180X89 的背景图像(与 UITextView 框架大小相同)。当将图像放在 UITextView 后面时,一
我只是想在 UITextView 中输入一些默认文本。有几个段落,我想用一个新行分隔这些段落。但是,当我按回车时,它只是完成了数据的输入。 在界面生成器中为 UITextView 创建默认文本时,如何
我的 iPhone 应用程序中有两个 UITextView。当用户选择一个 UITextView 时, Controller 会自动转到另一个 UITextView。我在我的项目中尝试了以下方式。但是
我正在使用 UITextView 并在我的代码中分配一些文本,但出于某种原因,它总是在 5-6 行之后开始。 UITextView 是一个 AttributedTextView 或允许属性字符串。
我有一个自定义 UIView,我想在其中布局一组 UITextView 以响应 AJAX 调用。所以我想我需要在代码中创建这些。我目前将位置设置为固定位置,但宁愿将其设置为比前一个位置低 20 像素。
我正在开发一个应用程序,它具有动态添加 TextView 的功能,在我们拖动它时增加和减小它的大小。 我可以根据字符数调整 TextView 大小,方法是将 TextView 的内容大小设置为 Tex
这可能是个愚蠢的问题。我正在尝试像所附图片一样设置左/右页边距。我通过在UIScrollView中添加UITextView成功实现了。但是,我几乎可以单独使用 UITextView 实现我想要的一切。
我有一个 UITextView。我正在根据方法 textViewDidChange 中文本的大小调整 TextView 的大小。这在我打字时工作正常。但是当我粘贴一些东西时,这不会接到电话。这是预期的
我正在开发一个基于消息的 iPhone 应用程序。我有一个屏幕可以回复收到的消息。此屏幕包含两个 UITextView,如 bottomTextView 和 topTextView。 topTextV
我用 View 制作了一个 UITextview 自定义控件。它工作正常。当我输入新行时, TextView 会随着 View (深蓝色)而增加。此后 TextViell 将以滚动的形式工作。 代码是
我想在用户完成编辑并点击屏幕上的其他地方后对我的 UITextView 执行一些处理。最佳做法是什么? 我几乎设法通过 func textViewDidEndEditing(textView: UIT
我想更改富 UITextView (iOS 6) 的部分或全部属性文本,并允许用户撤消更改。 看完NSUndoManager documentation ,我尝试了第一种方法: “Simple und
当我在 IOS7 模拟器上测试我的应用程序时。 有时我在使用 sizeToFit 时发现它很奇怪的 UITextView .sizeToFit后的框架看起来是对的,但文字只能部分显示,就像下面的照片一
我想要一个 tablew View ,其行为类似于 Apple 的 iPhone 联系人应用程序:一个 uitableviewcell,里面有一个 uitextview,这样当我在 uitextvie
我有一个可编辑的 UITextView,然后是一个仅供选择的 UITextView。当我在第一个 UITextView 中写东西时,有时我想引用另一个 UITextView 来复制文本,然后将其粘贴到
我是一名优秀的程序员,十分优秀!