UITextField和UILabel在UIScrollVew

问题描述:

在我的iphone应用程序中,我需要创建一个控制器,其中视图将具有以下规格。UITextField和UILabel在UIScrollVew

  • 为UITextField在视图顶部
  • 一些的UILabel给出UITextField下面和下面的每个的UILabel上一个
  • 当进入中的UITextField的东西,一个新的UILabel将是最后一个
  • 下面添加

(这几乎是在Wunderlist iPhone应用程序中所做的)。

要做到这一点,我想用一个UIScrollView,而不是控制器的UIView和添加的UITextField和所有的UILabel与的[自addSubView:label_i]

是这种做法是否正确?一开始我尝试了UITableView的方法,但我对此并不满意。

+0

我从来没有尝试Wunderlist,但它看起来像使用UITableView。 UITableViews非常灵活 - 可能值得再看一次? – 2011-12-24 21:58:06

+0

@ mike-k完全同意UITableView的灵活性。问题是,当创建一个新项目(来自UITextField)时,我希望新的UILabel(并且只有那个)出现一点效果(淡入淡出或东西)。你知道,如果只有一个特定的细胞可以出现而不刷新所有其他细胞? – Luc 2011-12-24 22:04:30

+0

@Luc iOS在添加新行时提供了一些内置动画(请参阅“ - (void)insertRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)动画”)。否则你可以在“ - tableView:cellForRowAtIndexPath:”中做你自定义的动画。) – 2011-12-24 22:44:31

看着这个Wunderlist应用程序,这可以使用带有子类,自定义UITableViewCell(具有透明边距[UIColor clearColor])的UITableView来实现。

下面是一些有用的链接: "Creating a Custom UITableViewCell In iOS 4" "Custom UITableViewCell Using IB"

如果你想与列表工作“UILabels,”一个UITableView将是最好的选择远远。

编辑:视图顶部的UITextView对应于tableHeaderView属性。