0

UIWebView で選択されたテキストを操作しようとしています。ポップアップする 2 つのボタンがあります。

コピーして定義

ここに画像の説明を入力

非常に高いレベルで、次のことを行うにはどうすればよいですか?

1) 選択したテキストの値を取得する

2) 別のメニュー項目を追加する

ありがとう

4

2 に答える 2

2

このチュートリアルでは、あなたの質問に詳しく答えます :)

http://ios-blog.co.uk/category/tutorials/rich-text-editing-a-simple-start-part-1/

具体的には、メニュー項目を追加するには、パート 3 から次のようにします。ルート ビュー コントローラーの実装ファイルに次を配置します。

UIMenuItem *highlightMenuItem = [[UIMenuItem alloc] initWithTitle:@"Highlight"  action:@selector(highlight)];
[[UIMenuController sharedMenuController] setMenuItems:[NSArray arrayWithObject:highlightMenuItem]];

次のようにハイライトメソッドを使用します。

- (void)highlight {
    NSString *currentColor = [webView stringByEvaluatingJavaScriptFromString:@"document.queryCommandValue('backColor')"];
    if ([currentColor isEqualToString:@"rgb(255, 255, 0)"]) {
        [webView stringByEvaluatingJavaScriptFromString:@"document.execCommand('backColor', false, 'white')"];
    } else {
        [webView stringByEvaluatingJavaScriptFromString:@"document.execCommand('backColor', false, 'yellow')"];
    }
}
于 2012-03-28T20:57:30.967 に答える
1

シングルトンはボタン付きのUIMenuController黒いポップアップであり、ドキュメントにはそれを操作する方法 (手動で表示する、新しいアイテムを追加する、アクションに応答するなど) に関する適切な情報が含まれています。

選択したテキストの取得に関しては、編集可能な div を で使用しているようです。UIWebViewこれは、JavaScript を介して編集アクションに応答する必要があることを意味します。

于 2012-03-28T20:52:58.373 に答える