2015-05-25 5 views

ответ

1

ДА вы можете

UIActionSheet *action = [[UIActionSheet alloc]initWithTitle:@"title" delegate:(id)self cancelButtonTitle:@"ok" destructiveButtonTitle:@"option" otherButtonTitles:nil, nil]; 

    [action showInView:self.view]; 

    UILongPressGestureRecognizer *longtaped = [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(recog)]; 

    [action addGestureRecognizer:longtaped]; 

он будет работать нормально веселит

+0

не работает ... я хочу каждую кнопку на листе действий есть жест longpress –

+0

ниже код будет работать для вас да или нет? –

+0

По-прежнему нет, если я долгое время с этим кодом все еще вызываю: «actionSheet clickedButtonAtIndex: (NSInteger) buttonIndex», но не функция longpress ... –

2

Либо создать свой собственный вид, который ведет себя как ActionSheet. Также попробуйте установить делегат таблицы действий на нуль в указанном ниже коде.

-(void)AddactionSheet{ 

    UIActionSheet *action = [[UIActionSheet alloc]initWithTitle:@"title" delegate:(id)self cancelButtonTitle:@"ok" destructiveButtonTitle:@"option" otherButtonTitles:nil, nil]; 

    [action showInView:self.view]; 


    for(UIView *v in [action subviews]) 
    { 
     if([v isKindOfClass:[UIButton class]]) 
     { 
      //((UIButton*)v).backgroundColor = [UIColor redColor]; // change button color 

      UILongPressGestureRecognizer *longtaped = [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(recog)]; 

      [((UIButton*)v) addGestureRecognizer:longtaped]; 

     } 
    } 

} 

-(void)recog{ 
    NSLog(@"Longpressed"); 

} 

этот код будет работать для вас если вы хотите добавить diffrent кнопки с diffrent longpress, чем нужно добавить, что «п» numbres жестов веселит

Смежные вопросы