UIWebView中Html中用JS调用OC方法及OC执行JS代码
来源:互联网 发布:学习c语言编程 编辑:程序博客网 时间:2024/05/01 20:39
HTML代码:
<html>
<head>
<title>HTML中用JS调用OC方法</title>
<meta http-equiv="Content-Type"content="text/html; charset=UTF-8">
<script>
function test()
{
alert("test alert...");
return "abcd";
}
</script>
<body>
<br/>
<br/>
<br/>
<a href='ios://openMyAlbum'>打开相机</a><br><br/>
<a href = 'ios://openMyCamera'>打开相册</a>
</body>
</html>
#OBJECT-C
- -(BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
- {
- NSString
- *urlstr = request.URL.absoluteString;
- NSRange
- range = [urlstr
- rangeOfString:@"ios://"];
- if
- (range.length!=0)
- {
- NSString
- *method = [urlstr
- substringFromIndex:(range.location+range.length)];
- SEL
- selctor = NSSelectorFromString(method);
- [self
- performSelector:selctor
- withObject:nil];
- }
- return
- YES;
- }
- -(void)openMyAlbum
- {
- UIImagePickerController
- *vc = [[UIImagePickerController
- alloc]init];
- vc.sourceType
- = UIImagePickerControllerSourceTypePhotoLibrary;
- [self
- presentViewController:vc
- animated:YES
- completion:nil];
- }
- -(void)openMyCamera
- {
- [_webView stringByEvaluatingJavaScriptFromString:@"test();"];
- return;
- UIImagePickerController
- *vc = [[UIImagePickerController
- alloc]init];
- vc.sourceType
- = UIImagePickerControllerSourceTypeCamera;
- [self
- presentViewController:vc
- animated:YES
- completion:nil];
- }
- - (void)viewDidLoad {
- [super viewDidLoad];
- _webView = [[UIWebView alloc] initWithFrame:self.view.bounds];
- [self.view addSubview:_webView];
- NSString *path = [[NSBundle mainBundle] pathForResource:@"test.html" ofType:nil];
- NSURL *url = [NSURL fileURLWithPath:path];
- NSURLRequest *req = [[NSURLRequest alloc] initWithURL:url];
- _webView.delegate = self;
- _webView.dataDetectorTypes = UIDataDetectorTypeAll;
- [_webView loadRequest:req];
- // Do any additional setup after loading the view, typically from a nib.
- }
<html>
<head>
<title>HTML中用JS调用OC方法</title>
<meta http-equiv="Content-Type"content="text/html; charset=UTF-8">
<script>
function test()
{
alert("test alert...");
return "abcd";
}
</script>
<body>
<br/>
<br/>
<br/>
<a href='ios://openMyAlbum'>打开相机</a><br><br/>
<a href = 'ios://openMyCamera'>打开相册</a>
</body>
</html>
#OBJECT-C
- -(BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
- {
- NSString
- *urlstr = request.URL.absoluteString;
- NSRange
- range = [urlstr
- rangeOfString:@"ios://"];
- if
- (range.length!=0)
- {
- NSString
- *method = [urlstr
- substringFromIndex:(range.location+range.length)];
- SEL
- selctor = NSSelectorFromString(method);
- [self
- performSelector:selctor
- withObject:nil];
- }
- return
- YES;
- }
- -(void)openMyAlbum
- {
- UIImagePickerController
- *vc = [[UIImagePickerController
- alloc]init];
- vc.sourceType
- = UIImagePickerControllerSourceTypePhotoLibrary;
- [self
- presentViewController:vc
- animated:YES
- completion:nil];
- }
- -(void)openMyCamera
- {
- [_webView stringByEvaluatingJavaScriptFromString:@"test();"];
- return;
- UIImagePickerController
- *vc = [[UIImagePickerController
- alloc]init];
- vc.sourceType
- = UIImagePickerControllerSourceTypeCamera;
- [self
- presentViewController:vc
- animated:YES
- completion:nil];
- }
- - (void)viewDidLoad {
- [super viewDidLoad];
- _webView = [[UIWebView alloc] initWithFrame:self.view.bounds];
- [self.view addSubview:_webView];
- NSString *path = [[NSBundle mainBundle] pathForResource:@"test.html" ofType:nil];
- NSURL *url = [NSURL fileURLWithPath:path];
- NSURLRequest *req = [[NSURLRequest alloc] initWithURL:url];
- _webView.delegate = self;
- _webView.dataDetectorTypes = UIDataDetectorTypeAll;
- [_webView loadRequest:req];
- // Do any additional setup after loading the view, typically from a nib.
- }
- 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
- 恶意问题哈迪斯
- validationEngine ashx 无法 跳转到制定页面
- 民适疆适窿射窿源例驰宵乔孩歧椅
- 策略模式(附Head First策略模式的C++代码实现)
- 【android】时间选择器
- UIWebView中Html中用JS调用OC方法及OC执行JS代码
- [leetcode] #50 Pow(x,n)
- LeetCode - Distinct Subsequences
- vs错误【C1083 C1854 C4727】的若干解决办法
- Android 提示框使用方法
- JAVA中Action层, Service层 ,modle层 和 Dao层的功能区分
- Java学习日记(五)多态、内部类
- poj2858Mayor's posters
- lower_bound用法