0

当点击按钮时,我想根据分段控件的值有条件地重新加载表格视图。

所以在我的 buttonTapped 方法中,我有这个随机选择一个数组项的代码。在else块中,我想从数组中删除选定的项目以防止再次选择相同的项目,目前我将其从数组中删除...

但我希望能够将应用程序返回到点击按钮之前的状态,也许是通过创建一个-mutableCopy数组然后从中删除该项目。

我必须有哪些潜在选项来表明无法再次选择某个项目?变灰了?颜色变化?删除行?

    if (selectionControl.selectedSegmentIndex == 0) {
        int r = arc4random() % [[[APP_DELEGATE itemsDictionary] objectForKey:category] count];
        NSLog(@"%i",[[[APP_DELEGATE itemsDictionary] objectForKey:category] objectAtIndex:r]);
    } else {
        //copyOfArray = [APP_DELEGATE.....]mutableCopy]; // Maybe?
        int r = arc4random() % [[[APP_DELEGATE itemsDictionary] objectForKey:category] count];
        NSLog(@"%i",[[[APP_DELEGATE itemsDictionary] objectForKey:category] objectAtIndex:r]);
    }
    [[[APP_DELEGATE itemsDictionary] objectForKey:category] removeObjectAtIndex:r];


    //[copyOfArray removeObjectAtIndex:r]; // Maybe?
    [self.tableView reloadData];
}

在每个 tableView 方法中,我需要在从 APP_DELEGATE 或副本返回值之前检查 selectionControl 的状态。

谢谢。

4

1 回答 1

0

我想我要做的是访问 UITableCellView 的“textLabel”成员,并将文本颜色设置为灰色。

您可以让他们实现 tableView:willSelectRowAtIndexPath: 以在按下该行时返回 NIL - 这将使其无法实际选择该行。

于 2010-10-25T01:03:44.273 回答