【发布时间】:2013-03-18 18:48:30
【问题描述】:
我已经用一些自定义单元格组成了一个表格视图。一些自定义单元格包含UIWebView,一些包含UISlider 加上UITextField,一些包含UIButton。
现在,当我单击 UITableView 底部的 uitableviewcell 子视图的文本字段时,我无法让我的表格单元格在键盘上方正确可见。
我无法使用UITableViewController 代替UIViewController。因为我的 UI 结构有些奇怪和动态。简单来说就像
UIView -> UIScrollView with paging -> x number of UITableViews -> y number of UITableViewCell -> z number of UITextFields, UISliders, UIWebViews, UIButtons, UILables, etc.
我也试过下面的代码让它工作。
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
UITableViewCell *cell = (UITableViewCell*) [[textField superview] superview];
[table_Question[pageNumber] scrollToRowAtIndexPath:[table_Question[pageNumber] indexPathForCell:cell] atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
但它不起作用:(
谢谢,
编辑 1:
我已经检查了 textfield、tableviewcell 和 tableview 的参考资料。所以对象的引用不是问题。
【问题讨论】:
-
当键盘可见时,为什么不调整整个 UIView 的大小?
-
textFieldDidBeginEditing:() 方法是否触发?
-
@Lefteris:那么我必须调整其中的所有内容,我认为这不是个好主意。
-
@BhanuPrakash:是的,当然它正在开火。
-
@CrimeMasterGOGO 但是您使用的是 UITableView(将它嵌套在滚动视图中并不重要)。所以调整 UITableView 的大小实际上并不需要你做任何事情。它只会按照您的意愿向上移动单元格...
标签: ios xcode ipad uitableview