gpt4 book ai didi

iphone - 当键盘弹出时如何使 UITableView 动画化?

转载 作者:行者123 更新时间:2023-12-03 20:28:12 29 4
gpt4 key购买 nike

我有一个包含 10 行的 UITableView。每个单元格中都有一个 UITextField

问题是,当我单击底部单元格中的 UITextField 时,键盘会弹出并阻止该单元格。我该如何处理这个问题?我需要为桌面 View 设置动画吗?

更新的代码:

- (void)textFieldDidBeginEditing:(UITextField *)textField{
self.vitalsTableView.contentInset=UIEdgeInsetsMake(0,0,200,0);
NSIndexPath *path = [self.vitalsTableView indexPathForSelectedRow];
[self.vitalsTableView scrollToRowAtIndexPath:path atScrollPosition:UITableViewScrollPositionTop animated:YES];
}

最佳答案

使用 UITableView 的 - (void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath atScrollPosition:(UITableViewScrollPosition)scrollPositionAnimated:(BOOL)animated 方法

示例:

[tableView scrollToRowAtIndexPath:cellIndexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];

会将 tableView 滚动到尽可能低的偏移量,以保持单元格可见。如果您的单元格下没有足够的单元格,您可以为表格设置 contentInset 以允许滚动偏移。

也许您的 UITextField 委托(delegate)是 TableView Controller 。您可以在 - (void)textFieldDidBeginEditing:(UITextField *)textField

上进行调用

对于底部单元格:

- (void)textFieldDidBeginEditing:(UITextField *)textField{
tableView.contentInset=UIEdgeInsetsMake(0,0,200,0);
[tableView scrollToRowAtIndexPath:cellIndexPath atScrollPosition:UITableViewScrollPositionTop animated:YES];
}

- (void)textFieldDidBeginEditing:(UITextField *)textField{
tableView.contentInset=UIEdgeInsetsMake(0,0,0,0);
}

关于iphone - 当键盘弹出时如何使 UITableView 动画化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8218436/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com