UIWebView で選択されたテキストを操作しようとしています。ポップアップする 2 つのボタンがあります。
コピーして定義
非常に高いレベルで、次のことを行うにはどうすればよいですか?
1) 選択したテキストの値を取得する
2) 別のメニュー項目を追加する
ありがとう
UIWebView で選択されたテキストを操作しようとしています。ポップアップする 2 つのボタンがあります。
コピーして定義
非常に高いレベルで、次のことを行うにはどうすればよいですか?
1) 選択したテキストの値を取得する
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')"];
}
}
シングルトンはボタン付きのUIMenuController
黒いポップアップであり、ドキュメントにはそれを操作する方法 (手動で表示する、新しいアイテムを追加する、アクションに応答するなど) に関する適切な情報が含まれています。
選択したテキストの取得に関しては、編集可能な div を で使用しているようです。UIWebView
これは、JavaScript を介して編集アクションに応答する必要があることを意味します。