gpt4 book ai didi

ios - 向 UITableView 插入行时的行为

转载 作者:行者123 更新时间:2023-11-29 02:49:59 31 4
gpt4 key购买 nike

我正在制作一个聊天应用程序。当键盘出现时,我的 UITableView 和工具栏(带有文本字段和按钮)使用 setFrame 方法向上移动。

当我在输入消息时收到其他用户的消息时,就会出现此问题。当发生这种情况时(即在 UITableView 中插入 RowsAtIndexPaths 后),我的 UITableView 和工具栏将“重置”到其原始位置。

这是系统引起的正常行为吗?我在我的代码中找不到任何可以执行此操作的内容。我希望工具栏保持可见,以便我仍然可以输入消息。

这是向我的数组和 UITableView 添加 convoItem (对话项)的代码:

- (void)insertConvoItem:(ConvoItem *)item
{
[_convoItems addObject:item];

// Update the table view
NSIndexPath *newIndexPath = [NSIndexPath indexPathForRow:([self.convoItems count] - 1) inSection:0];
[self.tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:newIndexPath] withRowAnimation:UITableViewRowAnimationFade];

// Scroll to the bottom so we focus on the latest message
NSUInteger numberOfRows = [self.tableView numberOfRowsInSection:0];
if (numberOfRows) {
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:(numberOfRows - 1) inSection:0] atScrollPosition:UITableViewScrollPositionBottom animated:YES];
}
}

最佳答案

这很正常。接收新消息会将您的表格 View 重置为其原始位置。

关于ios - 向 UITableView 插入行时的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24671311/

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