好吧,我可能会让这个令人困惑,但希望不会。我有一个UITableView
,我想在3中进行细分:详细信息(A),其他详细信息(B)和分配(C)。
在详细信息部分中,我想以与联系人应用程序相同的方式显示信息,但我不知道如何配置UITableViewCell
以显示该方式
在其他详细信息部分中,我想显示一个正常的部分,所以实际上我已经覆盖了它。
在 Assignment 部分,我希望有一个组合,其中两个单元格是正常的,并且将链接到其他控制器,一个单元格只是一个普通按钮。我需要为纽扣电池做些什么特别的事情吗?
现在我有各种按钮,表格单元格和标签,所以它看起来有点不好,因此我想清理它并使界面保持一致。
这是我想要做的事情的图画:
另一方面,在我点击一个单元格后,它滑到下一个控制器,然后我回去,单元格仍然被选中。如何在链接到的动作执行后取消选择?
提前感谢您的帮助!
答案 0 :(得分:0)
你需要的只是一个带有分组样式的UITableView,然后在tableView:cellForRowAtIndexPath:方法中你应该检查你要返回的单元格的部分(即[indexPath section])并返回一个基于它的单元格,因为所有的单元格在同一部分内应该是基本相同的类型和风格。不确定按钮,但实际上你应该只对tableView中的那些单元格有自定义行为:didSelectRowAtIndexPath:方法。这完全是为了正确实施合适的代表。
答案 1 :(得分:0)
在cellForRowAtIndexPath中应该是这样的:
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
...
...
if(indexPath.section == kAssignmentSection){
if(indexPath.row == kAssignRow || indexPath.row == kTransferRow){
cell.accesoryType = UITableViewCellAccessoryDisclosureIndicator;//Or Button
}
}
}
现在你应该检查
-(void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath{
if(indexPath.section == kAssignmentSection){
if(indexPath.row == kAssignRow){
//Do your thing for AssingRow or any other index you know that needs to be processed
}
}
}
答案 2 :(得分:0)
在我通过深入研究文档发布问题后的几个小时,我确实想到了这一点,最后我继续研究我的应用程序并忽略了这个问题。无论如何,实际上很容易改变细胞的外观。一切都是细胞风格。
细胞样式决定细胞的外观; 默认在我的绘图中看起来像 B , Value2 在我的绘图中看起来像 A 。
右侧的箭头是附件类型,或者在这种情况下,它是 DisclosureIndicator 。
我想这是在询问之前首先阅读文档的完美示例。所以这是我正在阅读的文档: