3

我在表格视图中有一些通常不可选择的单元格。用户必须使用详细信息披露附件来推送带有项目详细信息的新控制器。

但是,在返回表格视图时,我想突出显示该行,以便清楚他/她来自哪里。为此,我暂时将 selectionStyle 设置为蓝色,选择/取消选择行,然后将 selectionStyle 设置回无。

但是,因为单元格立即返回到 selectionStyleNone,所以最终结果是灰色的选择/取消选择,而不是蓝色的。

1)我怎样才能延迟这个 selectionStyle 的设置,直到取消选择完成?2) 同时,我的单元格将暂时选择快速手指——我该如何避免这种情况?

4

2 回答 2

0

您可以使用简单的 NSTimer 在设置的时间范围后将选择样式设置为无,如下所示...

[NSTimer scheduledTimerWithTimeInterval:1.0f
             target:self
             selector:@selector(methodToSetSelectionStyleToNone:)
             userInfo:nil
             repeats:NO];

...或者您可以使用自定义动画优雅地淡出它

[UIView animateWithDuration:1.0f delay: 0.0f
    animations:^{
        // set your selectionStyleNone here
        cell.selectionStyle = UITableViewCellSelectionStyleNone;
    }
    completion:^{

    }
];
于 2012-05-01T04:34:52.087 回答
0

保存您的索引路径并随时使用以下代码(viewWillAppear 或其他方法)

// 通过保存NSIndexPath在下面的代码中。通过这种方式,即使用户从详细视图返回,在他可以知道他/她选择了哪一行之后..

-(void)viewWillAppear:(BOOL)animated
{
[tableView1 selectRowAtIndexPath:[NSIndexPath indexPathForRow:4 inSection:0] animated:NO scrollPosition:0]; // you can use this line according your requirements.
}

希望对你有帮助..

于 2012-05-01T05:07:35.753 回答