Reputation: 1944
I have a lot of UITextView
s in my screen and i want to add a new custom UIMenuItem
for one of them.
It is possible to add a custom UIMenuItem
just for a specific UITextView
?
I use below code but i have my custom button for all UITextView
s
UIMenuItem *menuItem = [[UIMenuItem alloc] initWithTitle:@"Read" action:@selector(readButtonAction)];
[[UIMenuController sharedMenuController] setMenuItems:[NSArray arrayWithObject:menuItem]];
Thanks
Upvotes: 2
Views: 609
Reputation: 9246
If you want UIMenuItem
to be displayed for a specific UITextView
you can just add menuItem in textFieldDidBeginEditing
method and add a specific tag to the UITextView
so that custom menu item displayed for that only :-
-(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]];
}];
}
}
Upvotes: 1
Reputation:
I did not test it, but you could reset the menuItems
when one of the UITextView
become first responder. I'd do that by subclassing UITextView
and implementing the becomeFirstResponder
.
Upvotes: 1