【问题标题】:Moving the table view and keep the toolbar visible?移动表格视图并保持工具栏可见?
【发布时间】:2010-04-28 10:49:11
【问题描述】:

在我看来,我有一个工具栏,顶部有一个按钮,下面有一个表格视图,如下图所示: alt text http://img34.imageshack.us/img34/5845/view2.png

您可以看到表格视图的单元格中有文本字段。 当我想编辑表格视图底部的 tet 字段时,就会出现问题。正如您可以想象的那样,键盘与文本字段重叠。假设我想编辑 C 部分中的字段,结果如下: alt text http://img200.imageshack.us/img200/4685/keyboars.png

我尝试了不同的方法来移动表格视图,但最终我总是隐藏工具栏。在一种情况下,工具栏与表格视图一起向上移动,在第二种情况下,表格视图与工具栏重叠: alt text http://img293.imageshack.us/img293/3310/iphonesimulator.png

关于如何移动表格视图以使正在编辑的单元格可见以及工具栏可见的所有想法? 如何移动/调整表格视图的大小?

谢谢!

【问题讨论】:

    标签: iphone user-interface interface-builder


    【解决方案1】:

    您可以使用 tableview contentInsets 属性:

    //216 is keyboard height
    theTable.scrollIndicatorInsets = UIEdgeInsetsMake(0, 0, 216, 0);
    theTable.contentInset = UIEdgeInsetsMake(0, 0, 216, 0);
    

    【讨论】:

    • 你能解释一下这段代码应该做什么吗?我不确定我是否理解它应该如何工作。
    • contentInset 定义了表格视图内容的 inset。如果您了解 HTML/CSS,它有点像填充。如果您创建一个 (100, 0, 0, 0) 的插图,第一行将不会从顶部 0 像素开始,而是从 100 像素开始。底部,左侧和右侧也是如此。 scrollIndicatorInsets 本质上是相同的,但是对于表格右侧的滚动指示器。当 UITextField 成为第一响应者时,运行此代码,它将“调整”表格视图的大小。当它退出时,只需使用UIEdgeInsetsMake(0, 0, 0, 0) 再次运行它。
    【解决方案2】:

    您是否尝试过使用 scrollToRowAtIndexpath 将相关行滚动到 tableview 的顶部?

    【讨论】:

    猜你喜欢
    • 2016-06-18
    • 1970-01-01
    • 2010-11-10
    • 1970-01-01
    • 2012-07-04
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多