Очевидно, раньше существовал простой способ предотвратить появление метки «Еще ...» в UIMenuController, когда вы добавляли более одного пользовательский пункт меню. Вам просто нужно было удалить все элементы системного меню. Здесь был даже обходной путь , чтобы все еще иметь копировальную работу. Вам просто нужно было реализовать собственную команду копирования с использованием другого селектора, а затем переопределить canPerformAction: withSender:, чтобы не отображать системную копию:
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
if (action == @selector(copy:))
return NO;
else
// logic to show or hide other things
}
К сожалению, этот метод больше не работает (по крайней мере, в подклассе UIWebView). canPerformAction: withSender: вызывается для каждого элемента системного меню, кроме copy: поэтому в результате всегда отображается элемент меню системного копирования. Это означает, что если у вас более одного элемента пользовательского меню, они всегда скрыты за «More ...»
Итак, есть ли способ действительно удалить элемент копии системы или какой-либо альтернативный способ предотвратить скрытие элементов меню за «More ...»?
Update
Это результат, который я получаю, когда переопределяю canPerformAction: withSender: обратите внимание, что метод никогда не вызывается для действия «copy:»:
cannot perform action cut: with sender .
cannot perform action select: with sender .
cannot perform action selectAll: with sender .
cannot perform action paste: with sender .
cannot perform action delete: with sender .
cannot perform action promptForReplace: with sender .
cannot perform action _showMoreItems: with sender .
cannot perform action _setRtoLTextDirection: with sender .
cannot perform action _setLtoRTextDirection: with sender .
can perform action customCopy: with sender .
can perform action custom1: with sender .
cannot perform action custom2: with sender .
can perform action custom3: with sender .
can perform action custom4: with sender .
cannot perform action cut: with sender .
cannot perform action select: with sender .
cannot perform action selectAll: with sender .
cannot perform action paste: with sender .
cannot perform action delete: with sender .
cannot perform action promptForReplace: with sender .
cannot perform action _showMoreItems: with sender .
cannot perform action _setRtoLTextDirection: with sender .
cannot perform action _setLtoRTextDirection: with sender .