键盘出现时,Tableview不会保持不变

时间:2016-07-12 21:25:52

标签: ios swift uitableview

我研究了遍布stackoverflow。我找到了太多解决方案,但它们无法正常工作。这是典型的ios问题。

键盘出现时我必须移动tableview。我尝试了以下代码:

    func keyboardWillShow(notification: NSNotification) {
        var info = notification.userInfo!
        let keyboardFrame: CGRect = (info[UIKeyboardFrameEndUserInfoKey] as! NSValue).CGRectValue()

        let edgeInsets = UIEdgeInsetsMake(0, 0, keyboardFrame.size.height, 0)
        self.tableView.contentInset = edgeInsets
        self.tableView.scrollIndicatorInsets = edgeInsets
}

状态1:没有键盘,一切看起来都不错:

enter image description here

状态2:键盘出现,而tableview没有显示最后一行。您可以与州1进行比较。

enter image description here

我该如何正确地做这件事?如果用户滚动到顶部然后触摸文本字段, tableview应该显示相同的位置,没有最后一行。我的意思是当键盘出现时我不希望任何滚动到底部代码。 Tableview应保持相同,有/无keypoard出现状态。你可以检查Whatsapp我需要完全相同的机制。我怎么能这样做?

PS:不介意文本字段,我删除了他们移动到键盘代码上方以便测试tableview。

0 个答案:

没有答案