2
我有一個UIWebView加載一個HTML字符串,內容可以添加到使用Javascript。我如何知道什麼時候UIWebView被粘貼了?
有什麼方法可以知道什麼時候(文本或圖像)已被粘貼到網頁視圖中。
NSString *path = [[NSBundle mainBundle] pathForResource:@"htmlString" ofType:@"txt"];
NSString *htmlString = [[NSString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
[self.ibWebView loadHTMLString:htmlString baseURL:nil];
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
NSString *jsToEncloseInEditableContainer = [NSString stringWithFormat:@"function contentedited(e){window.location='mpscontentedited://' + e.keyCode;};(function() {var body = document.body;var contentContainer = document.createElement('div');contentContainer.id = 'content';contentContainer.setAttribute('contenteditable','true');contentContainer.style.fontFamily=' Helvetica';contentContainer.style.marginTop=\"15px\";contentContainer.onkeydown = contentedited;contentContainer.onpaste=contentedited;var node;while(node=body.firstChild) {contentContainer.appendChild(node);}body.appendChild(contentContainer);%@body=undefined;delete body;contentContainer=undefined;delete contentContainer;node=undefined;delete node;})();", @"contentContainer.focus();"];
[self.ibWebView stringByEvaluatingJavaScriptFromString:jsToEncloseInEditableContainer];
}
我試過重寫UIResponder的paste:方法,但它永遠不會被調用。
- (void)paste:(id)sender
{
NSLog(@"paste not called");
}
我也試圖創建一個自定義菜單按鈕
UIMenuController *menu = [UIMenuController sharedMenuController];
UIMenuItem *item = [[UIMenuItem alloc] initWithTitle:@"Paste Custom" action:@selector(pasteCustom:)];
[menu setMenuItems:@[item]];
[menu setMenuVisible:YES];
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
if (action == @selector(pasteCustom:))
{
return YES;
}
return [super canPerformAction:action withSender:sender];
}
- (void)pasteCustom:(id)sender
{
NSLog(@"paste custom");
[super paste:sender]; // --> calling this causes a crash (unrecognized selector sent to instance)
}
我在做什麼錯?
我想要知道什麼時候被粘貼,或者我想要一個自定義菜單按鈕,其行爲類似於默認的粘貼按鈕。
在此先感謝。
Thanks! :)。有沒有辦法可以對圖像做同樣的事情? – vivek241
@ vivek241出於好奇,如何粘貼圖像?哪個HTML元素用於那個? – 2013-08-19 17:50:41
我正在尋找類似於iOS上的本機電子郵件應用程序的解決方案。 – vivek241