你在哪里拉从这个-numberForRowsInSection:
方法很兴奋?据我(和文档)知道,它不存在,并从来没有作为UITableView的方法存在。猜测会让你无处可逃,更不用说从空气中发明方法。
也许你应该回顾一些教程,包括使用UITableView的基础知识,然后再尝试这些。我怀疑有人会花时间给你写一个完整的课,并将其写入答案中,如果你不只是简单地复制/粘贴代码,那么从长远来看,你会变得更好。你不明白。 UITableView中包含很多文档和示例,只是考虑Apple提供的内容 - UITableView是一种常用的类,它在Google中搜索类似“UITableView教程”的内容将为您提供页面和页面结果。
我会给你一个你需要做什么的快速概览,尽管如下: 1.当然,你可以从Xcode中的UITableViewController模板开始,并开始自定义它以适应你的需求......两节,然而,每节的许多行等,如果需要的话,根据某些模型级别的对象来确定。
你需要(至少增加一个UISwitch子视图)要么创建一个自定义的UITableViewCell子类或自定义默认的UITableViewCell布局好一点,当你创建新小区对象tableView:cellForRowAtIndexPath:
。
应将UISwitch配置为当交换机的值使用-[UIControl addTarget:action:forControlEvents:]
作为UIControlEventValueChanged
事件更改时向您的视图控制器发送消息。
在实现此开关值更改的操作方法时,您需要实现逻辑以确定是应该添加还是减去行,然后实际添加或减去行。您可以使用beginUpdates
/endUpdates
,insertRowsAtIndexPaths:withRowAnimation:
和deleteRowsAtIndexPaths:withRowAnimation:
以获得很好的平滑行动画行为,而不是简单地调用reloadData
。
感谢您的回答。我认为我理解UITableView相当不错(我读过几本书等)。我认为只需编辑行数就可以了。我没有想过插入一行:)感谢提示。现在我将从哪里开始。下次我会先阅读文档:) – jacky 2009-11-29 16:28:14