目标c-如何在iPad上使用JavaScript/Oj-c将图像保存到照片库
objective c - How to save image to Photo gallery using JavaScript/Obj-C on iPad?
我目前正在iPad上开发一个基于JavaScript的小型绘图应用程序。我只是像这样将它封装在UIWebView中。现在的问题是,我不知道如何从应用程序中保存图像,以便将其存储在iPad照片上。
有没有一些简单的方法可以将JavaScript代码与Objective-C代码连接起来?我想我可以从JS端传递一个包含PNG图像数据的字符串,然后使用Objective-C将其保存到照片库中。
是的,有一种方法可以将javascript从UIWebView桥接到Obj-C代码。
设置您的UIWebView代理,并在代理中粘贴以下方法
//
// Map links starting with file://
// ending with #action
// with the action of the controller if it exists.
//
// Open other links in Safari.
- (BOOL)webView: (UIWebView*)webView shouldStartLoadWithRequest: (NSURLRequest*)request navigationType: (UIWebViewNavigationType)navigationType {
NSString *fragment, *scheme;
if (navigationType == UIWebViewNavigationTypeLinkClicked) {
[webView stopLoading];
fragment = [[request URL] fragment];
scheme = [[request URL] scheme];
if ([scheme isEqualToString: @"file"] && [self respondsToSelector: NSSelectorFromString(fragment)]) {
[self performSelector: NSSelectorFromString(fragment)];
return NO;
}
[[UIApplication sharedApplication] openURL: [request URL]];
}
return YES;
}
然后,您可以编写处理该请求的Obj-C方法。例如在你的网络视图中,你可能有一个按钮,上面有一个类似的链接标签
<a href="file://myGreatApp.com/saveImage">Click Me to Save Image </a>
方案是"文件",片段是"saveImage"。您现在可以编写Obj-C方法
-(void)saveImage;
每次用户点击链接时都会调用它。
编辑:如果您想在方法中传递字符串参数,只需使用javascript将它们附加到片段url即可。所以你可能有
<a href="file://myGreatApp.com/saveImage*asdgo8asdgl35lkjasgd807ll12">Click Me to Save Image </a>
然后在您的Obj-C代码中,在字符"*"上拆分片段。使用前半部分作为选择器,后半部分作为参数。
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- nodejs-expressjs上传图像并显示它们
- 使用JSP从服务器检索和显示图像
- 角度:在ng重复上切换图像
- 画廊图像未显示
- Phonegap-(安卓/iphone)多个图像的图像库出现问题
- Javascript排序的图像弹出窗口..可以't单独弹出
- 画布数据到图像
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 使图像在单击时展开到不大于浏览器
- Html页面上的多个Base64图像和平滑加载
- UIAutomation放大图像
- 使用javascript在Flash中加载外部图像
- 可以在这里为背景图像设置滤镜吗
- 当图像转换为本地存储的DataURL时,EXIF被删除
- 使用 js 将背景图像设置为 HTML
- Javascript将图像src更改为淡入淡出
- 无法在本地计算机中将画布另存为图像
- 压缩phonegap中ios的图像插件
- 目标c-如何在iPad上使用JavaScript/Oj-c将图像保存到照片库