Hãy thử sử dụng một thủ thuật nhỏ:
Chỉ cần đặt alpha của ô. Đặt một số điều kiện như yêu cầu của riêng bạn và đặt alpha.
cell.alpha=0.2;
Nếu nó không hoạt động, theo cách bạn muốn, hãy sử dụng thủ thuật thứ hai,
Chỉ cần lấy một hình ảnh có kích thước ô có nền màu xám với Nền trong suốt, chỉ cần thêm hình ảnh đó vào hình ảnh trên nội dung ô. Như thế này:
// 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;
}
Mặc dù tôi không chắc chắn về cách thức, nhưng điều này chắc chắn sẽ đáp ứng được yêu cầu của bạn. Chỉ cần thử sử dụng giải pháp này, hy vọng nó sẽ giải quyết được vấn đề của bạn.
cell.userInteractionEnabled = cell.textLabel.enabled = cell.detailTextLabel.enabled = NO;