0

ユーザーがセルをタップしたときにセルの背景画像を変更しようとしています (強調表示された状態)。この方法を試しましたが、機能しません:

- (void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    cell.textLabel.backgroundColor = [UIColor clearColor];
    cell.detailTextLabel.backgroundColor = [UIColor clearColor];
    cell.textLabel.textColor = [UIColor whiteColor];
    cell.detailTextLabel.textColor = [UIColor whiteColor];
    cell.textLabel.textAlignment = NSTextAlignmentRight;
    cell.detailTextLabel.textAlignment = NSTextAlignmentRight;
    cell.textLabel.font = [UIFont fontWithName:kFONT_NAME size:kFONT_SIZE];

    cell.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"row320x63.png"] highlightedImage:[UIImage imageNamed:@"row320x63_pressed.png"]];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

    if (cell == nil)
    {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    // Configure the cell...
    tableView.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"row320x63.png"]];
    cell.textLabel.text = [self.listOfMenuSettings objectAtIndex:indexPath.row];
    cell.imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"settings_icon_%d", indexPath.row]];

    UIImageView *pressed = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"row320x63_pressed.png"]];
    [cell setSelectedBackgroundView:pressed];

    return cell;
}

私は何が欠けていますか?

4

1 に答える 1