我想将照片上传到twitter,facebook和twit pic等等。我在Array中使用了它并在Table视图中显示。我正在使用shareKit。我编码好像我选择了一个单元格(对于eg.Twitter)然后它会将照片上传到twitter我想要选择多个单元格并在一个按钮上执行此发送操作(发送到选定的行项目)。我能够标记/取消标记单元格但是如何获取单元格的选定值。我不希望它处于表的编辑模式..
代码:
- (void) tableView:(UITableView *)atableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
cell.accessoryType = UITableViewCellAccessoryNone;
}
else {
cell.accessoryType = UITableViewCellAccessoryCheckmark;
}
}
答案 0 :(得分:3)
让sourceArray
成为您用来填充tableview的数组。
selectedObjects
是一个被选中的对象数组,初始化为包含0个对象。它应该是(私有)类实例变量。
//NSMutableArray *selectedObjects = [[NSMutableArray array] retain];
- (void) tableView:(UITableView *)atableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
YouObjectType *object = [sourceArray objectAtIndex:indexPath.row]; //This assumes that your table has only one section and all cells are populated directly into that section from sourceArray.
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
cell.accessoryType = UITableViewCellAccessoryNone;
[selectedObjects removeObject:object];
}
else {
cell.accessoryType = UITableViewCellAccessoryCheckmark;
[selectedObjects addObject:object];
}
}
然后在您描述的按钮的发送操作方法中,使用selectedObjects
数组中的对象执行所需的操作。
答案 1 :(得分:1)
您也可以使用tableview中的复选标记来制作..
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)path {
UITableViewCell *cell = [tableView cellForRowAtIndexPath:path];
if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
cell.accessoryType = UITableViewCellAccessoryNone;
} else {
cell.accessoryType = UITableViewCellAccessoryCheckmark;
}
}
答案 2 :(得分:0)
您可以在选择了哪个单元格的数组中管理它,或者在选择行时,然后在didSelectRowAtIndexPath中根据上述条件更新该数组,并在上载图像时使用该数组。例如 - 你有一个数组,其中包含用于键@“image”和@“isSelected”的字典两个对象,并使用此数组填充表,当您选择一行时,然后在indexPath.row中作为字典对象访问数组中的元素并为键“isSelected”更新字典“true”或“flase”。
答案 3 :(得分:0)
在didSelectRowAtIndexPath中获取indexPath.row,您可以知道选择了哪个单元格。
答案 4 :(得分:0)
您可以使用此github repo JLSelectionTVC(https://github.com/nvrtdfrst/JLSelectionTVC)来完成此任务