UIWebView中Html中用JS调用OC方法及OC执行JS代码
来源:互联网 发布:阿里云os 后视镜 编辑:程序博客网 时间:2024/05/01 06:18
转载 http://code4app.com/snippets/one/UIWebView中Html中用JS调用OC方法及OC执行JS代码/546d7ba6933bf03d0a8b4ccd
UIWebView中Html中用JS调用OC方法及OC执行JS代码
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
HTML代码:
<html>
<head>
<title>HTML中用JS调用OC方法</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
[removed]
function openAlbum()
{
// 打开相册(openMyAlbum为OC中的方法)
[removed].href= 'ios://openMyAlbum';
}
function openCamera()
{
// 打开相机(openMyCamera为OC中的方法)
[removed].href= 'ios://openMyCamera';
}
[removed]
</head>
<body>
<br/>
<br/>
<br/>
<input type="button" value="打开相机"> <br><br/>
<input type="button" value="打开相册">
</body>
</html>
OC代码:
#import "ViewController.h"
@interface ViewController()<UIWebViewDelegate>
@property (weak, nonatomic)IBOutlet UIWebView *webview;
- (IBAction)getTitle;
@end
@implementation ViewController
- (void)viewDidLoad
{
[superviewDidLoad];
NSURL*url = [[NSBundlemainBundle] URLForResource:@"test.html"withExtension:nil];
[self.webviewloadRequest:[NSURLRequestrequestWithURL:url]];
self.webview.delegate = self;
self.webview.dataDetectorTypes= UIDataDetectorTypeAll;
}
#pragma mark UIWebViewDelegate方法
/**
*开始加重请求拦截
*/
-(BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
NSString*urlstr = request.URL.absoluteString;
NSRangerange = [urlstr rangeOfString:@"ios://"];
if (range.length!=0) {
NSString*method = [urlstr substringFromIndex:(range.location+range.length)];
SEL selctor = NSSelectorFromString(method);
[selfperformSelector:selctor withObject:nil];
}
return YES;
}
/**
* OC执行JS代码
*/
- (IBAction)getTitle {
[self.webviewstringByEvaluatingJavaScriptFromString:@"alert(document.title);"];
}
-(void)openMyAlbum
{
UIImagePickerController*vc = [[UIImagePickerController alloc]init];
vc.sourceType= UIImagePickerControllerSourceTypePhotoLibrary;
[selfpresentViewController:vc animated:YEScompletion:nil];
}
-(void)openMyCamera
{
UIImagePickerController*vc = [[UIImagePickerController alloc]init];
vc.sourceType= UIImagePickerControllerSourceTypeCamera;
[selfpresentViewController:vc animated:YEScompletion:nil];
}
@end
- UIWebView中Html中用JS调用OC方法及OC执行JS代码
- UIWebView中Html中用JS调用OC方法及OC执行JS代码
- UIWebView中Html中用JS调用OC方法及OC执行JS代码
- UIWebView中Html中用JS调用OC方法及OC执行JS代码
- UIWebView中Html中用JS调用OC方法及OC执行JS代码
- UIWebView和网页的交互(JS中调用OC代码)
- Html中用js回调OC方法
- js调用OC代码
- UIWebView和网页的交互(OC中调执行JS)
- UIWebView js oc相互调用的三种方法
- oc调用js方法
- UIWebview中 js 的执行结果返回给OC ,js 回传OC
- iOS UIWebView中JS和OC互相调用
- OC中调用JS
- UIWebview JS和OC相互调用
- js调用oc代码 和 oc调用js代码
- OC里面UIWebView中js交互
- 利用JS 直接调用执行OC代码,非提取URL
- 【Linux】Nginx配置文件nginx.conf中文详解
- Eclipse中10个最有用的快捷键组合
- buildroot制作的文件系统不见登陆命令行
- phonegap(cordova) 入门 15----微信中屏蔽apk下载间接解决办法
- Layout(View)保存为Bitmap或者保存为String
- UIWebView中Html中用JS调用OC方法及OC执行JS代码
- note--Memory allocate in game
- 怎样更好的掌握集合框架的知识点?
- Struts2<1>HelloWorld
- Android中SQLite应用详解
- Android圆型头像实现
- eclilpse安装subclipse
- Pycharm中git的配置
- java设计模式