在tableView中选择多个单元格并将另一个tableView单元格中的选定单元格显示为标签?
Posted
技术标签:
【中文标题】在tableView中选择多个单元格并将另一个tableView单元格中的选定单元格显示为标签?【英文标题】:Select Multiple cell in tableView and display the selected cell in another tableView Cell as a label? 【发布时间】:2013-02-20 08:35:47 【问题描述】:您好,我正在创建一个与 ios 默认警报相关的应用。我在 tableView 中选择多个单元格。如果我单击后退按钮,选定的单元格将在 tableViewCell 中显示为另一个视图中的标签。我正在使用故事板。如何做到这一点?
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
UITableViewCell *thisCell = [tableView cellForRowAtIndexPath:indexPath];
if (thisCell.accessoryType == UITableViewCellAccessoryNone)
thisCell.accessoryType = UITableViewCellAccessoryCheckmark;
[myIndexArray addObject:[NSString stringWithFormat:@"%d",indexPath.row]];
else
thisCell.accessoryType = UITableViewCellAccessoryNone;
for(int i=0; i<myIndexArray.count; i++)
if([[myIndexArray objectAtIndex:i]intValue]== indexPath.row)
[myIndexArray removeObjectAtIndex:i];
break;
The sample image I want like this
我想要一个类似重复视图的东西,然后按返回按钮,选定的单元格将显示在重复 tableViewCell 中。
【问题讨论】:
【参考方案1】:我在我的应用程序中做了同样的事情。我可以帮你...RepeatDayViewController
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (UITableViewCellAccessoryNone == cell.accessoryType )
cell.accessoryType = UITableViewCellAccessoryCheckmark;
NSNumber *dayNumber = [NSNumber numberWithInteger:indexPath.row];
[self.repeatDays addObject:dayNumber];
else
cell.accessoryType = UITableViewCellAccessoryNone;
NSNumber *dayNumber = [NSNumber numberWithInteger:indexPath.row];
[self.repeatDays removeObject:dayNumber];
我将self.repeatDays
传递给AddAlarmViewController
在AddAlarmViewController
我有一个这样的数组
_days = [[NSArray alloc ]initWithObjects:@"Sun",@"Mon",@"Tue",@"Wed",@"Thu",@"Fri",@"Sat",nil];
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
if ([self.repeatDays count])
NSMutableArray *repeatDays = [NSMutableArray array];
for (NSNumber *dayNumber in self.repeatDays)
[repeatDays addObject:[_days objectAtIndex:[dayNumber integerValue]]];
NSString *repeatLabel = [repeatDays componentsJoinedByString:@" "];
cell.detailTextLabel.text = repeatLabel;
else
cell.detailTextLabel.text = NSLocalizedString(@"Never",nil);
【讨论】:
谢谢,我会检查并回复你 @Anil 你能给我任何样品吗?谢谢 @Anil 我已经试过了..我想要警报应用程序的样本。请传给我【参考方案2】:无论何时用户选择一行保存操作,如NSUserDefaults
在
-(void)viewDidAppear:(BOOL)animated
UITableViewCell* testCell = [azanTableview cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
if ([[NSUserDefaults standardUserDefaults]boolForKey:@"testCell"]==YES)
testCell.accessoryType = UITableViewCellAccessoryCheckmark;
testCell .textLabel.textColor = [UIColor colorWithRed:0.22 green:0.33 blue:0.53 alpha:1.0];
等等……
【讨论】:
以上是关于在tableView中选择多个单元格并将另一个tableView单元格中的选定单元格显示为标签?的主要内容,如果未能解决你的问题,请参考以下文章
选择 TableView 单元格时无法显示另一个 ViewController
iPhone 4.3 的 Tableview 中的多个单元格选择
在单元格内编辑textview时,将另一个单元格添加到tableview