Uimenucontroller в Uiwebview с пользовательскими пунктами меню без большего меню

StackOverflow https://stackoverflow.com/questions/4311009

Вопрос

В моем приложении для iPad есть UIWebView, который отображает текстовый контент. Когда я нажимаю на удержание и выбираю текст, меню должно всплыть с 2 пользовательским меню.

Скажи, | Меню 1 | Меню2 |

Но кажется, что меню копирования также будет сопровождать, что я не смог отключить. Есть ли возможность отключить его? Я попробовал вокруг форума и никаких решений не разработано.

так что ITZ нормально, чтобы сохранить меню копирования вместе с остальными 2. Что теперь должно выглядеть как

| Копия | Меню 1 | Меню2 |

Но, к сожалению, я показываю это с более меню следующим образом:

| Копия | Подробнее ... |

Нажатие больше ... меню показывает другое меню.

Но мне нужны все эти 2 элемента, которые будут отображаться в самой первой попытке. Либо только 2 меню, либо по крайней мере вместе с меню копирования.

| Копия | Меню 1 | Меню2 |

ИЛИ ЖЕ

| Меню 1 | Меню2 |

Принеси мне какое -то решение, пожалуйста .... пробую это во многих отношениях ... но ничего не работает ... пожалуйста, помоги мне ...

Спасибо, Брайан

Это было полезно?

Решение

Не похоже, что есть способ сделать это без замены Uimenucontroller. Один из вариантов - справиться с вашим собственным uilongpressgesturerecognizer (см. Как удалить копию uimenuitem в uimenucontroller) Я видел предложения, где вы переопределяете Canperformaction, но это не работает. Интересно, что «копия:» никогда не называется, хотя кажется, что все остальное (вырезать:, выберите: и т. Д.).

- (BOOL) canPerformAction:(SEL)action withSender:(id)sender
{
    if (action == @selector(defineSelection:))
    {
        return YES;
    }
    else if (action == @selector(translateSelection:))
    {
        return YES; 
    }
    else if (action == @selector(copy:))
    {
        return NO;
    }

    return [super canPerformAction:action withSender:sender];
}

`

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top