- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
到目前为止,我只收到一份关于这次崩溃的报告:
'-[UITextView setTextContainerInset:]: 无法识别的选择器发送到实例 0x1d68e600'
我不确定为什么会这样。我无法重现该问题。我的实际代码行是这样的:
UITextView *someInfo = = [[UITextView alloc] initWithFrame:CGRectMake(x, y, 100, 30)];
someInfo.textContainerInset = UIEdgeInsetsMake(0, HORIZONTAL_PADDING, 0, HORIZONTAL_PADDING);
但我不明白为什么它说选择器发送不正确。我也确实注意到该错误在某人的 iphone 4 上崩溃,当时他们正在运行 ios 6.1.3。这是 iOS 7 之前的特定内容吗??
最佳答案
要点:
如果您在低于 iOS 7.0 的版本中构建您的应用程序,它甚至不会编译。它将显示错误 unrecognized selector sent to instance
。
但是您在问题中提到“我确实也注意到该错误在某人的 iphone 4 上崩溃了”。由此我可以假设您正在 iOS 7.0 或更高版本中创建构建。
问题是因为向后兼容性。当您允许您的应用程序在早期版本上运行时,您需要注意这类事情。
您必须实现条件来检查版本兼容性。
#if __IPHONE_6_0 || __IPHONE_6_1
#else
#endif
编辑:
对于 Pre iOS 7.0,您需要使用 NSAttributedString
和 NSMutableParagraphStyle
。
对于左右边距,不要立即添加纯文本,而是使用 NSAttributedString
并使用 NSMutableParagraphStyle
正确设置左右缩进:
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.headIndent = 20.0;
paragraphStyle.firstLineHeadIndent = 20.0;
paragraphStyle.tailIndent = -20.0;
NSDictionary *attrsDictionary = @{NSFontAttributeName: [UIFont fontWithName:@"TrebuchetMS" size:12.0], NSParagraphStyleAttributeName: paragraphStyle};
textView.attributedText = [[NSAttributedString alloc] initWithString:myText attributes:attrsDictionary];
以上代码直接来自这个答案:
关于iOS 6 '-[UITextView setTextContainerInset:]: unrecognized selector sent to instance 0x1d68e600',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26667503/
到目前为止,我只收到一份关于这次崩溃的报告: '-[UITextView setTextContainerInset:]: 无法识别的选择器发送到实例 0x1d68e600' 我不确定为什么会这样。我
我是一名优秀的程序员,十分优秀!