我需要从UITableView实现1级大纲视图。其中包含子项的单元格将具有“+”符号,如果用户点击它,则其下方的单元格应向下滑动,并且应显示当前所选行的子单元格。单元格的滑动应该是可见的,如果用户点击已经展开的行的“ - ”按钮,子单元格应该滑回到父级。
我尝试过谷歌搜索,但没有找到任何指示。
如果我是UITableView的子类,我应该如何开始?或者我应该实现自己的视图子类并处理那里的所有东西?
我觉得UITableView子类会更容易,因为它会为我们处理所有的行选择,但我无法弄清楚如何去做。
谢谢和问候, 拉吉
答案 0 :(得分:2)
您不能将字典维护为数据源吗?字典举行字典数组。内部字典有两个键值对:
通过检查bool isExpanded,您将获得行数。您需要自定义单元格以添加按钮。它会对你有用吗?
您可以通过将细胞内容轻微推向右侧来区分儿童细胞。
答案 1 :(得分:1)
您必须是子类和UITableViewCell
@interface OutlineCell : UITableViewCell
然后,在你的表的ViewController中
- (UITableViewCell*) tableView: (UITableView*) tableView cellForRowAtIndexPath: (NSIndexPath*) indexPath {
NSString* MyIdentifier = @"MyIdentifier";
OutlineCell* cell = (OutlineCell*) [tableView dequeueReusableCellWithIdentifier: MyIdentifier];
if (cell == nil) {
cell = [[OutlineCell alloc] init];
}
// Populate cell data
}
您可以通过IB定义界面,创建一个空XIB并拖动UITableViewCell,并将自定义OutlineCell类作为文件所有者。然后添加按钮,标签等。
编辑:如果你想要一个单元格中的内部表,尝试使用相同的方法将子视图添加到你定义的UITableViewCell,里面有一个UITableView。