UIButton для перехвата метода didSelectRowAtIndexPath UITableView - PullRequest
0 голосов
/ 17 апреля 2010

У меня есть UIB-кнопка в ячейке таблицы, предназначенная для вызова UIActionSheet, но проблема в том, что didSelectRowAtIndexPath захватывает это касание, и его действие имеет приоритет. Есть какой-нибудь умный способ переопределить это действие, когда пользователь касается кнопки, и все еще имеет действие по умолчанию, когда пользователь нажимает в другом месте ячейки?

Жаль, что нет свойства MoveToFront.

1 Ответ

3 голосов
/ 17 апреля 2010

Как у вас есть кнопка добавления на ячейку

я ставлю один образец

в

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

...

    UIButton *btnDetail = [UIButton buttonWithType:UIButtonTypeRoundedRect] ;

    [btnDetail setFrame:CGRectMake(225.0f, 15.0f, 65.0f, 20.0f)] ;
    //btnDetail.backgroundColor = [UIColor grayColor];
    [btnDetail setTitle:@"Detail" forState:UIControlStateNormal];
    [btnDetail setTitleColor: [UIColor redColor] forState: UIControlStateNormal];
    [btnDetail.titleLabel setFont:[UIFont fontWithName:@"Verdana-Bold" size:12]];
    [btnDetail setBackgroundColor:[UIColor clearColor]];
    [btnDetail sizeThatFits:btnDetail.frame.size];
    [cell addSubview:btnDetail];
    [btnDetail addTarget:self 
               action:@selector(function1:)
     forControlEvents:UIControlEventTouchUpInside];
    [btnDetail setImage:[UIImage imageNamed:@"btn-detail.png"] forState:UIControlStateNormal];

если вы написали

[btnDetail addTarget:self 
                   action:@selector(function1:)
         forControlEvents:UIControlEventTouchUpInside];

ваша кнопка должна быть способна захватить событие касания, а функция1 должна быть вызвана ... при событии касания ...

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