【发布时间】:2015-03-31 07:55:21
【问题描述】:
我有一个 UITextView,当用户输入多行文本时它会改变高度。我的问题是,当用户输入足够多的行时,UITextView 会被位于 textview 上方的 UITableView 覆盖。当 textview 的高度增加时,有什么方法可以通过编程方式将 tableview 向上移动?
这是改变textview高度的原因,位于textViewDidChange函数中:
if (self.contentSize.height > self.frame.height && self.contentSize.height < 166){
self.frame.origin.y -= (self.contentSize.height - self.frame.height)
self.frame.size = self.contentSize
}else if (self.contentSize.height < self.frame.height){
self.frame.origin.y += self.frame.height - self.contentSize.height
self.frame.size = self.contentSize
}
【问题讨论】:
-
我尝试在每次调整 textview 大小时将 textview 的 superview 向上移动,但这会将 textview 与 tableview 一起向上移动...所以这绝对不是答案哈哈
-
为什么不直接向上移动 tableview 的框架?
-
因为我正在尝试制作一个消息传递应用程序......如果tableview太高看起来不太好
-
但是您问“当 textview 的高度增加时,有没有办法以编程方式将 tableview 向上移动?”
-
我刚刚写了一个带有 iMessage 风格 textview 的应用程序,它就是您想要做的,它位于底部,然后使用键盘进行动画处理。
标签: ios swift uitextview