3

私の iPad アプリには、テキスト コンテンツを表示する UIWebview があります。タップしてテキストを選択すると、2 つのカスタム メニューを含むメニューがポップアップ表示されます。

と言う | メニュー1 | メニュー2 |

しかし、無効にできなかったCOPYメニューも付随するようです。無効にする可能性はありますか?私はフォーラムを試してみましたが、解決策はありませんでした。

そのため、COPY メニューを他の 2 と一緒に保持しても問題ありません。これは次のようになります。

| | コピー | メニュー1 | メニュー2 |

しかし、残念ながら、次のように MORE メニューで表示されています。

| | コピー | もっと... |

More... メニューをクリックすると、他の 2 つのメニューが表示されます。

しかし、最初の試行自体でこれら 2 つの項目をすべて表示する必要があります。2つのメニューのみ、または少なくともコピーメニューと一緒に。

| | コピー | メニュー1 | メニュー2 |

また

| | メニュー1 | メニュー2 |

いくつかの解決策を教えてください....多くの方法で試しています..しかし、何もうまくいきません...助けてください...

ありがとう、ブライアン

4

1 に答える 1

2

UIMenuController を置き換えずにこれを行う方法はないようです。1 つのオプションは、独自の UILongPressGestureRecognizer を処理することです ( UIMenuController で COPY UIMenuItem を削除する方法を参照)。canPerformAction をオーバーライドする提案を見てきましたが、これは機能しません。興味深いことに、「copy:」アクションは決して呼び出されませんが、他のすべて (cut:、select: など) は呼び出されるようです。

- (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];
}

`

于 2010-12-10T21:26:56.140 に答える