iPhone - UITableViewCell, имеющий UIView, который имеет 2 UIButton - PullRequest
0 голосов
/ 14 января 2011

У меня есть табличное представление. В каждой ячейке (строке) я хочу показать две кнопки. изначально оба красного цвета. когда нажата одна кнопка, она становится зеленой, а другая будет красной. Я создал вид, который имеет две кнопки. Я использую IB для создания представления. Я использую следующий код, чтобы показать мой вид таблицы, чтобы показать пользовательский вид:

- (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];
    }

 NSArray *bundle = [[NSBundle mainBundle] loadNibNamed:@"CellView"
             owner:self options:nil];
 CellView *myView;
    for (id object in bundle) {
        if ([object isKindOfClass:[CellView class]])
            myView = (CellView *)object;
    }   
 NSString* str = [testArray objectAtIndex:indexPath.row];
 NSArray* arr = [str componentsSeparatedByString:@" "];
 myView.left.titleLabel.text = [arr objectAtIndex:0];
 myView.right.titleLabel.text = [arr objectAtIndex:1];

 [cell.contentView addSubview:myView];
    return cell;
}

Вышеупомянутый код работает нормально, но когда кнопка нажата, она показывает кнопку с текстом, который я создал в IB. Я не понимаю, почему это происходит?

Может ли кто-нибудь подсказать мне, как показать кнопку в ячейке и обработать ее действие?

1 Ответ

1 голос
/ 14 января 2011

Я думаю, вы должны указать titleLabel для разных состояний кнопки.Тогда этот код будет работать нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...