ios交互js

来源:互联网 发布:php重庆好找工作吗 编辑:程序博客网 时间:2024/05/29 09:29

1、准备一个本地化的html网页,如jsIOS.html

                            <script type="text/javaScript">            function postStr(){                 return document.getElementById("text1").value;                 //return "javaScript返回值啦";            }        </script>              


2、将此html文件放到项目代码目录里面,如图:

\


3、拖一个UIWebView控件和UIButton控件到xxxViewController对应的.xib或.storyboard视图的UIView上;

在xxxViewController的.h文件中分别声明UIWebView类型变量和UIButton类型的变量,以及一个按钮点击事件(并且跟视图里面的控件连线),

并且添加一个UIWebViewDelegate类型的委托。<喎�"http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+eHh4Vmlld0NvbnRyb2xsZXIuaM7EvP7E2sjdyOfPwqO6PC9wPgo8cD48L3A+CjxwIGNsYXNzPQ=="p1">

#import @interface ViewController : UIViewController @property(nonatomic,retain) IBOutlet UIWebView *webview;@property(nonatomic,retain) IBOutlet UIButton *button;-(IBAction)IOS_JS:(id)sender;@end


4、在xxxViewController.m文件中实现通过点击事件,调用javaScript的方法并取得返回值。

代码如下:

#import "ViewController.h"@interface ViewController ()@end@implementation ViewController@synthesize webview;- (void)viewDidLoad{    [super viewDidLoad];    //设置webViewwebview.backgroundColor = [UIColor clearColor];    //webview.scalesPageToFit =YES;    webview.delegate =self;    //找到jsIOS.html文件的路径    NSString *basePath = [[NSBundle mainBundle]bundlePath];    NSString *helpHtmlPath = [basePath stringByAppendingPathComponent:@"jsIOS.html"];    NSURL *url = [NSURL fileURLWithPath:helpHtmlPath];    //加载本地html文件    [webview loadRequest:[NSURLRequest requestWithURL:url]];}/* * 点击事件 * 调用javaScript的方法postStr()并取得返回值 * 输出返回值到控制台 */-(IBAction)IOS_JS:(id)sender{    NSString *str = [self.webview stringByEvaluatingJavaScriptFromString:@"postStr();"];    NSLog(@"JS返回值:%@",str);}- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];}@end
0 0
原创粉丝点击