Спробуйте скористатися невеликим фокусом:
Просто встановіть альфа-клітинку. Поставте якусь умову як власні вимоги та встановіть альфу.
cell.alpha=0.2;
Якщо це не працює, як вам тоді подобається, використовуйте другий фокус,
Просто візьміть зображення розміру комірки із сірим фоном із прозорим фоном, просто додайте це зображення на зображення над вмістом комірки. Подобається це:
// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
// Configure the cell...
if(indexPath.row==0)
{
cell.userInteractionEnabled=FALSE;
UIImageView *img=[[UIImageView alloc]init];
img.frame=CGRectMake(0, 0, 320, 70);
img.image=[UIImage imageNamed:@"DisableImage.png"];
img.backgroundColor=[UIColor clearColor];
[cell.contentView addSubview:img];
[img release];
}
else {
//Your usual code for cell interaction.
}
return cell;
}
Хоча я не впевнений у шляху, але це, безсумнівно, виконає ваші вимоги. Це дасть певну ілюзію у свідомості користувача, що клітинка відключена. Просто спробуйте скористатися цим рішенням, сподіваючись, що це вирішить вашу проблему.
cell.userInteractionEnabled = cell.textLabel.enabled = cell.detailTextLabel.enabled = NO;