我有一个表格视图控制器,我需要在点击一个单元格时显示日期和时间选择器,并在再次点击单元格时隐藏它。基本上与您选择开始和结束日期和时间以在日历中创建新事件时iphone具有的效果相同。
我猜测显示和隐藏是按照以下方法进行的,但我不确定内容是什么:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {}
一些示例代码或链接会很棒。谢谢!!
答案 0 :(得分:1)
使用您想要显示的内容和选择器创建您的单元格:
-----------------------------------
cell visible part
-----------------------------------
cell invisible part (with picker)
-----------------------------------
定义一个属性,让您知道是否必须显示整个单元格:
@property (nonatomic) BOOL shouldShowPicker;
初始化此属性(例如,在viewDidLoad上);
self.shouldShowPicker = NO;
要触摸的几种方法:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if(indexPath.row == 4) { //where your picker row is
self.shouldShowPicker = YES;
[self.tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
}
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if(indexPath.row == 4 && self.shouldShowPicker) { //where your picker row is
return CELL_VISIBLE_PLUS_INVISIBLE_PART;
} else if(indexPath.row == 4 && !self.shouldShowPicker) {
return return CELL_VISIBLE_PART;
} else {
return OTHER_CELLS_HEIGHT;
}
}
答案 1 :(得分:0)
您可能会发现我的答案很有用,它描述了您需要做的事情。
Inline UIPicker Implementation
基本上,您可以使用可选按钮创建包含日期选择器的自定义单元格。然后,在编辑时将此单元格添加到单元格下方,并在完成后将其删除。所有这些都在链接中解释。