2016-01-27 5 views
1

У меня есть много UITextView s на моем экране, и я хочу добавить новый пользовательский UIMenuItem для одного из них.Добавить UIMenuItem для определенного UITextView?

Можно добавить заказ UIMenuItem только для определенного UITextView?

Я использую ниже код, но у меня есть своя собственная кнопка для всех UITextView сек

UIMenuItem *menuItem = [[UIMenuItem alloc] initWithTitle:@"Read" action:@selector(readButtonAction)]; 
[[UIMenuController sharedMenuController] setMenuItems:[NSArray arrayWithObject:menuItem]]; 

Благодарности

ответ

1

Если вы хотите UIMenuItem будет отображаться для определенного UITextView вы можете просто добавить MENUITEM в textFieldDidBeginEditing метод и добавить определенный тег к UITextView так, что пункты меню отображаются для этого только: -

-(void)textViewDidBeginEditing:(UITextView *)textView 

{ 
    if(textview.tag==999) //specify for which textveiw you want custom menu 
    { 
    [[NSOperationQueue mainQueue] addOperationWithBlock:^{ 
    UIMenuItem *menuItem = [[UIMenuItem alloc] initWithTitle:@"Read" action:@selector(readButtonAction)]; 
    [[UIMenuController sharedMenuController] setMenuItems:[NSArray arrayWithObject:menuItem]]; 
     }]; 
    } 
} 
+0

Да, но у Чарлза Тьерри есть право. Вам нужно каждый раз перезагружать, если не является моим конкретным UITextView. Просто добавьте else и setMenuIetems с пустым массивом и будете работать. Спасибо за ваш ответ –

+0

Да, я думал, что часть будет обрабатываться вами;) – Vizllx

1

Я не проверял, но вы можете сбросить menuItems, когда один из UITextView стать первым ответчик , Я сделал бы это путем подкласса UITextView и реализации becomeFirstResponder.

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