- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
收到此错误
2017-07-28 20:17:34.636 App[78013:1799389] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'An instance 0x7fa97b0bf400 of class App.MessagesCellTextView was deallocated while key value observers were still registered with it. Current observation info: <NSKeyValueObservationInfo 0x618000434e80> (
<NSKeyValueObservance 0x618000243c60: Observer: 0x7fa97b0bf400, Key path: contentSize, Options: <New: YES, Old: NO, Prior: NO> Context: 0x0, Property: 0x618000243c90>
当我离开聊天 Controller 并返回时。
这是我的 contentSize 代码
var observerAdded: Bool = false
override func awakeFromNib() {
super.awakeFromNib()
self.addObserver(self, forKeyPath:"contentSize", options:.new, context:nil)
observerAdded = true
}
deinit {
if (observerAdded) {
observerAdded = false
self.removeObserver(self, forKeyPath: "contentSize")
}
}
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
if let textView = object as? UITextView {
var y: CGFloat = (textView.bounds.size.height - textView.contentSize.height * textView.zoomScale) / 2.0
y = (y < 0.0 ? 0.0 : y)
textView.contentOffset = CGPoint(x: 0, y: -y)
}
}
奇怪的是,我尝试删除所有这些代码,但我仍然收到相同的错误,什么!!。
最佳答案
如果观察者未添加到您的 awakeFromnib
方法中,请检查该标志,然后相应地添加它:-
override func awakeFromNib() {
super.awakeFromNib()
if !observerAdded {
self.addObserver(self, forKeyPath:"contentSize", options:.new, context:nil)
observerAdded = true
}
}
关于swift - NSInternalInconsistencyException 观察者 contentSize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45376528/
我有一个 UIViewController 和一个纵向的 iPad xib。当我的 iPad 处于横向并将该 View Controller 放入 UISplitViewController 的详细信
我在 UITableViewCell 中有一个 collectionView。 collectionView 的内容是动态的,因此它的高度也是动态的,tableView 单元格的高度取决于 colle
我正在制作一个启用了分页机制的简单 UICollectionView,一切正常。但是,当滚动到最后一页时,单元格的数量在屏幕上并不完全可见,最后一页包含前一页的一些单元格。 如何扩展 UICollec
我在 UIView 类中使用 UIBezierpath 绘制对话气泡。在 View 类中包含UITextView。我正在使用以下代码来绘制对话气泡。 //BezierPathView.h @inter
我正在开发一个带有甘特图的小型 iPad 应用程序,它将显示过去 25 小时内的事件。我有 5 个缩放级别,每个级别分别为 1 小时、30 分钟、15 分钟、5 分钟和 1 分钟。我的单元格宽度为 3
我需要动态地将文本字段添加到 ScrollView 。我能够做到这一点,添加后我每次都会计算并更新 ScrollView 的内容大小。 更新内容大小后,我可以在屏幕上查看它,一旦编辑文本字段(键盘消失
是否可以使用动画更改 UIScrollView 的 contentSize ,以便大小在特定时间段内减小/增大,例如 UIView.animateWithDuration(0.3, animation
我们面临一个问题,即当弹出窗口内使用 UIActionSheet 样式的alertController 时,弹出窗口大小会发生变化。这是在我们升级代码库 iOS13 后发生的 示例代码:https:/
收到此错误 2017-07-28 20:17:34.636 App[78013:1799389] *** Terminating app due to uncaught exception 'NSIn
我正在将我的应用程序从 Obj-C 转换为 Swift。 我有 UICollectionViewLayout 的子类,它覆盖了已重命名为“prepare”的“prepareForLayout”。到目前
我有 UITableView 和 UITableViewCell,其中包含 UICollectionView,如下: UITableViewCell UITableViewCell UICollect
我在 View 中有一个 UITextField 和一个 UITextView。 场景是这样的: textFieldShouldReturn:UITextField 的方法使 UITextView 成
我正在双击 UIScrollView 中缩放 UIImageView。在 Interface Builder 中设置后工作正常。我在这里看到的神奇之处在于,当我放大/缩小时,scrollView 的
我的 UIViewController 中有 4 个 UIViews,颜色分别为:黄色、绿色、灰色和蓝色。 我还给出了以下自动布局约束: 黄色 View :Top-8-superview, Leadi
我有一个只能水平滚动的 UIScrollView。 ScrollView 固定在屏幕底部。我已将自动布局约束设置为固定高度。我将 contentSize 设置为固定大小。 但是,当我运行该应用程序时,
我有一个 UITableView,它在 UITableView 第一次重新加载后添加了一些数据,但是我无法向下滚动到新数据,如果我滚动我看到了新数据,但它会自动向后滚动,是的,我重新加载了我的 UIT
所以我的 scrollView 的 contentSize 最初等于我的图像的框架,但似乎我缩放得越多,contentSize 就越大。因此,当 scrollView 放大时,它周围有一个巨大的间隙。
为什么 UIScrollView 实例会在委托(delegate) scrollViewDidEndZooming:(UIScrollView *) aScrollView withView:(UIV
我对 UIScrollView 中的 contentSize 属性有点困惑。我的 scrollView 中有一张图像,我正在缩放和平移。我一直在为 contentSize 设置不同的值,但在我看来,输
在我的 View 中,我创建了一个宽度为 320、高度为 70 的 ScrollView 。 响应用户触摸按钮,我展开 ScrollView ,因此它的大小为 380(h) x 320(w)。 代码如
我是一名优秀的程序员,十分优秀!