[SDK]iPhoneアプリ開発初心者質問箱40[touch][iPad]
■ このスレッドは過去ログ倉庫に格納されています
0092名称未設定
2014/09/01(月) 04:00:15.86ID:bG7MDT/d0indexPathsForVisibleRows だと、下部のツールバーに隠れて見えないセルまで見えてることになってしまいます。(みえてるとスクロールが発生しない)
しかたがないので、決め打ちハードコードで判別してるのですが、もうちょっとスマート処理できないのでしょうか?
NSInteger addedCellY = 44*addedIP.row - contentOffset.y;
// 追加したセルが見えてる。 // < 480 = 568 - 44 - 44
if(addedCellY < (self.view.frame.size.height - _bottomToolBar.frame.size.height - 44)) // 決め打ち条件判別式
=====
NSArray *visibleCellIPs = [_mytable indexPathsForVisibleRows];
if ([visibleCellIPs lastObject] == addedIP ){ // 追加したセルが見えてる場合。
// スクロールせず追加したセルをハイライトアニメ。
}
else // 追加したセルが見えてない
{ // 一番下までスクロールして、ハイライト
_isAddingCell = YES; // scrollViewDidEndScrollingAnimation: で使う。
[_mytable scrollToRowAtIndexPath:addedIP atScrollPosition:UITableViewScrollPositionBottom animated:YES];
}
- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{
if(_isAddingCell == YES){
NSIndexPath *IP = [NSIndexPath indexPathForRow:_items.count-1 inSection:0];
MYImageCell *addedCell = (MYThumCell *)[_mytable cellForRowAtIndexPath:IP];
// 一番下へ移動後、追加したセルをハイライトアニメ
} // END if
_isAddingCell = NO;
}
■ このスレッドは過去ログ倉庫に格納されています