1.[cell setSelectionStyle:UITableViewCellSelectionStyleNone]; 这个只是设置选择的时候的样式,而不是禁止点击选择。 cell没有选中的阴影
2.- (void)collectionView:(UICollectionView*)collectionView didSelectItemAtIndexPath:(NSIndexPath*)indexPath 选中状态
- (void)collectionView:(UICollectionView*)collectionView didDeselectItemAtIndexPath:(NSIndexPath*)indexPath 取消选中状态
在我们点击cell的时候这两个方法的执行顺序是先取消在选中 当然也可以手动去调用这个方法 ,tableView是多选的,在小位计步问题中当点击了一个cell 我另外手动又didSelect一次cell,再次点击cell时,系统默认先取消的是之前点击的cell而非我手动设置点击的cell
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];if ([myTableView.delegate respondsToSelector:@selector(tableView:willSelectRowAtIndexPath:)]) {
[myTableView.delegate tableView:self.tableView willSelectRowAtIndexPath:indexPath];
}
[myTableView selectRowAtIndexPath:indexPath animated:YES scrollPosition: UITableViewScrollPositionNone];
if ([myTableView.delegate respondsToSelector:@selector(tableView:didSelectRowAtIndexPath:)]) {
[myTableView.delegate tableView:self.tableView didSelectRowAtIndexPath:indexPath];
}
还有一种默认选中的方法:可以放在reloadData之后
NSIndexPath *ip=[NSIndexPath indexPathForRow:0 inSection:0];
[tableView selectRowAtIndexPath:ip animated:YES scrollPosition:UITableViewScrollPositionBottom];