2012-03-12 181 views
0

我试图找出最好的方法来做到这一点 - 我有一个UITableView用户以前选择和存储的项目。当你点击一个项目时,它会将你带到一个详细页面。我需要的是能够点击表格视图下方的按钮来重新载入表格并更改附件使其成为勾号而不是泄露,然后用户可以取消勾选项目并将其从列表中删除,然后单击另一个按钮,用于重新载入更新的表格并恢复披露附件。更改按钮上的UITableView功能按

问题是,什么是最好的方式来“记住”点击后处理表重新加载的方式,所以它知道哪种方式来显示它?你会使用NSUserDefaults来存储一个按钮点击标志,或者有更好的方法来做到这一点吗?我想我可以使用按钮的状态,不管它是处于一种状态还是另一种状态,但我猜测我缺少一些内置的东西。

希望有道理 - 谢谢。

+0

使用* static bool *怎么样?它将在方法调用中保持它的价值。 – ClosedID 2012-03-12 16:15:05

+0

这实际上是我正在寻找的东西 - 我需要一些方法来保留一个标志,以指示哪个版本的表格显示在点击事件后不会丢失。我想我再次以ASP.net的方式思考;-)我会尝试 - 谢谢 – Dave 2012-03-12 16:25:53

回答

0

通常我有一些'模型对象',并根据这些对象的数组构造表。我cellForRowAtIndexPath看起来是这样的:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 
    InterestsCell *cell = (InterestsCell*)[tableView dequeueReusableCellWithIdentifier:kInterestsCellID]; 
    if (cell == nil) { 
     ... 
    } 

    Interest *i = (Interest*)[self.interestsArray objectAtIndex:indexPath.row]; 
    cell.myTfSubview.enabled = i.isChecked; 

    return cell; 
} 

如果你没有你的模型,那么你可以创建布尔值和存储标志存在的阵列。

+0

谢谢,但我不看如何显示表,但更多的是保持一个标志设置,以确定哪种类型的表格显示。 – Dave 2012-03-12 16:26:51

+0

@Dave,我的想法 - 创建一些模型对象并将其存储在NSArray中 – beryllium 2012-03-12 16:29:23