ios – UITableViewWrapperView和UITableView大小与autolayout不同

ios – UITableViewWrapperView和UITableView大小与autolayout不同,第1张

概述我正在建立一个聊天一切似乎都很好,但我碰到了一些“错车”的问题. 我有UIViewController与UITextView栏输入消息和UITableView. 他们在这个约束:“V:| – (64) – [chatTable] [sendMessageBar] – (键盘) – |”. 当键盘不出来时,该约束的常数为0.并且在键盘输出之后,我将常数增加到键盘高度. 当键盘不出来时: self.t 我正在建立一个聊天一切似乎都很好,但我碰到了一些“错车”的问题.

我有UIVIEwController与UITextVIEw栏输入消息和UItableVIEw.
他们在这个约束:“V:| – (64) – [chattable] [sendMessagebar] – (键盘) – |”.
当键盘不出来时,该约束的常数为0.并且在键盘输出之后,我将常数增加到键盘高度.

当键盘不出来时:

self.table.contentSize = (375.0,78.5)self.table.bounds = (0.0,-490.0,375.0,568.5)self.table.frame = (0.0,64.0,568.5)self.table.subvIEws[0].frame (UItableVIEwWrapperVIEw) = (0.0,0.0,568.5)

当键盘出来时:

self.table.contentSize = (375.0,-274.0,352.5self.table.frame = (0.0,352.5)self.table.subvIEws[0].frame (UItableVIEwWrapperVIEw) = (0.0,-137.5,137.5)self.table.subvIEws[0].frame (UItableVIEwWrapperVIEw) = (0.0,137.5)

因此,在增加约束常数后,UItableVIEwWrapperVIEw的大小与其超视图UItableVIEw不同.有没有办法来解决这个问题 ?我会假设UItableVIEwWrapperVIEw会根据UItableVIEw改变其框架和界限,但是它不会.

任何想法,问题在哪里,我该如何解决?

并补充说:

经过一些更多的研究 – 似乎它发生在vIEwWillLayoutSubvIEws和vIEwDIDLayoutSubvIEws之间的某个地方.这有点奇怪吗

overrIDe func vIEwWillLayoutSubvIEws() {    println("WrapperVIEw Frame :991: \(self.table.subvIEws[0].frame)") \ WrapperVIEw Frame :991: (0.0,568.5)    super.vIEwWillLayoutSubvIEws()    println("WrapperVIEw Frame :992: \(self.table.subvIEws[0].frame)") \ WrapperVIEw Frame :992: (0.0,568.5)}overrIDe func vIEwDIDLayoutSubvIEws() {    println("WrapperVIEw Frame :6: \(self.table.subvIEws[0].frame)") \ WrapperVIEw Frame :6: (0.0,137.5)    super.vIEwDIDLayoutSubvIEws()    println(">> vIEwDIDLayoutSubvIEws")}

所以似乎有一些事情会混乱UItableVIEwWrapperVIEw

解决方法 似乎这是一个错误(与这个BUG一起玩了整整一天为我)
最后 this解决方法有帮助:
for (UIVIEw *subvIEw in tableVIEw.subvIEws){    if ([NsstringFromClass([subvIEw class]) isEqualToString:@"UItableVIEwWrapperVIEw"])    {        subvIEw.frame = CGRectMake(0,tableVIEw.bounds.size.wIDth,tableVIEw.bounds.size.height);    }}
总结

以上是内存溢出为你收集整理的ios – UITableViewWrapperView和UITableView大小与autolayout不同全部内容,希望文章能够帮你解决ios – UITableViewWrapperView和UITableView大小与autolayout不同所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1111119.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存