ビュー(テーブルビューを含む)が読み込まれるときに、テーブルビューの下にスクロールします。これは素晴らしいです。しかし、私のボタン(sendReply)の1つがタップされているとき、私はまた、tableViewを下にスクロールしたい。何らかの理由で、ビューが最初にロードされたときにtableViewの一番下までスクロールしますが、sendReplyアクション内に配置すると[self bottomScroll:self]は発生しません。uibuttonをタップしたときにtableViewの下にスクロールする
.M
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[self bottomScroll:self];
}
- (void)bottomScroll:(id)sender {
if (self.messages.count > 0)
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:self.messages.count-1 inSection:0] atScrollPosition:UITableViewScrollPositionBottom animated:YES];
}
- (IBAction)sendReply:(id)sender {
[self bottomScroll:self];
}
messages.countは間違いなく、ボタンがタップされたときに0より大きく、試してみてください - とブレークポイントは、コードが実行されることを示しているようです。超奇妙な。 –
クリーンなプロジェクトで問題を再現できますか?私はあなたが新しいプロジェクトで何をしようとしているのか、うまくいっているようだ。私が考えることができる最後の問題は、あなたのindexPathの 'section:0'部分です。これも正しいと確信していますか? – phi