0

我实现了一个 TableView 以在选择特定行时显示一个 PickerView。但这有时会阻止选定的单元格。所以,当pickerView 出现时,我希望我的scrollView 滚动到选定的单元格。

无论如何要获取所选行的当前位置吗?这样我就可以实现类似的东西

//---scroll to the current text field---
CGRect textFieldRect = [currentTextField frame];
[scrollView scrollRectToVisible:textFieldRect animated:YES];

谢谢。

4

1 回答 1

1

如果要解决pickerView或者键盘隐藏屏幕的问题,可以试试这个办法。实现heightForFooterInSection并设置一个高度值,tableView 将向上滚动到您在此处指定的相同值。

-(CGFloat)tableView:(UITableView*)tableView heightForFooterInSection:(NSInteger)section
{
return 70.0;
}

如果您只想让 tableView 滚动,只需实现scrollToRowAtIndexPath:atScrollPosition:animated:

编辑:

由于您使用的是UIScrollView,因此您可以使用编程方式滚动到某个区域

[scrollView setContentOffset:CGPointMake(x, y) animated:YES];

另请阅读此参考:http ://www.aaron.griffith.name/weblog/2011/02/23/scrolling-a-uiscrollview-programmatically/

于 2011-08-07T02:20:56.507 回答