首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

来了,iOS的JSCore与H5的交互

今天的主角就是JSCore这个哥们,苹果爸爸开放出来很久被大家忽略的角色。这是一个很方便的进行JS与WebView进行通信的神器。既然是神器就理所当然能够方便的进行两端的相互通信。...那么有了桥梁我们同样需要给WebView说一声让他知道native的存在--- self.ctx[@"App"] = self; 这样相互直接就知道对方的存,js通过App这个作为native的引用,...是给我们的函数起了一个js调用的function起了个别名,进而兼容转换一线js的function与OC的函数的差异。...但是有一个点需要注意,我们暴露出的共js调用至少需要一个形参,也就是说,不传递数据也要有一个参数 ② 传递给WebView的引用实现协议与函数 这里我们只看一个实现 -(void)popBack:(NSString...webview的alert的处理方法 self.ctx[@"window"][@"alert"] = ^(JSValue *message) { dispatch_async

1.2K30

wkwebview加载完成_【Swift】WKWebView与JS的交互使用

,需要有提示信息以及两个相应事件, 确认及取消,并且在completionHandler中回传相应结果,确认返回YES, 取消返回NO //参数 message为 js 方法 confirm(要有一个输入框一个按钮,点击确认按钮回传输入值 //当然可以添加多个按钮以及多个输入框,不过completionHandler只有一个参数,如果有多个输入框,需要将多个输入框中的值通过某种方式拼接成一个字符串回传...,js接收到之后再做处理 //参数 prompt 为 prompt(, );中的 //参数defaultText 为 prompt(的引用,任何 JS 中的值都可以被包装为一个 JSValue。...但是,每个 JSVirtualMachine 是不同的,即我们不能将一个 JSVirtualMachine 中创建的值传递到另一个 JSVirtualMachine 中的上下文。

5.7K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【IOS开发基础系列】UIAlertController专题

    全新的UIPresentationController在实现视图控制器间的过渡动画效果和自适应设备尺寸变化效果(比如说旋转)中发挥了重要的作用,它有效地节省了程序员们的工作量(天地良心啊)。...不过要特别注意第三个参数,要确定您选择的是对话框样式还是上拉菜单样式。         通过创建UIAlertAction的实例,您可以将动作按钮添加到控制器上。...,我们让程序读取文本框中的值。     ...弹出框必须要有一个能够作为源视图或者栏按钮项目的描点(anchor point)。由于在本例中我们是使用了常规的UIButton来触发上拉菜单的,因此我们就将其作为描点。         ...不过您仍然可以在需要的时候以编程方式释放它,就像释放其他视图控制器一样。您应当在应用程序转至后台运行时移除对话框或者上拉菜单。

    60630

    iOS8统一的系统提示控件——UIAlertController

    通过present和push进行呼出,而不是以前的show方法。另一个机制改变的地方是,其中按钮的触发方法不再通过代理处理,而是将按钮封装成了类:UIAlertAction。..." style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {        //按钮触发的方法     }]...初始化方法中的preferref参数是一个枚举,决定是提示框或者抽屉列表: typedef NS_ENUM(NSInteger, UIAlertControllerStyle) {     UIAlertControllerStyleActionSheet... = 0,//抽屉     UIAlertControllerStyleAlert//警告框 } 上面的addAction方法添加了一个封装了方法的按钮,UIAlertAction类的构造十分简单,如下...textField,以前的相关控件,虽然也可以添加textField,但是定制化能力非常差,这个新的方法中有一个configurationHandler代码块,可以将textField的相关设置代码放入这个代码块中

    64410

    iOS学习——UIAlertController详解

    1.1  UIAlertController提示器对象的创建   UIAlertController提示器的创建主要是通过类方法来进行创建的,其中第一个参数是标题,第二个参数是内容信息,第三个参数UIAlertControllerStyle...我们需要在UIAlertController提示器添加一个按钮时,先创建一个UIAlertAction,然后通过UIAlertController的 addAction: 方法将创建的UIAlertAction...对象直接用UIAlertAction的类方法就可以创建了,其中第一个参数是按钮的标题;第二个参数UIAlertActionStyle是选择按钮的风格类型,有三种选择:常规、取消和销毁风格类型;第三个参数是一个...只有一个参数,就是一个Block,用于我们队该文本框进行配置,比喻说其字体大小,行数限制等等,都可以在该Block中进行设置。...我们可以看到,在配置文本框这里还有一个参数是textFields,这各参数是一个只读数组类型,用于获取UIAlertController提示器上所有的文本框对象,这个经常在我们点击按钮时用这个来获取到每一个文本框

    3.4K170

    iOS 传感器集锦

    因为这个属性可以设置一个时间间隔,在时间间隔内是不需要再次录入。...这几个传感器都是依赖于苹果官方CoreMotion框架,用法都差不多,先判断各个传感器是否可用开启,然后设置各个传感器的采集频率,接着就开始采集数据,并返回采集到的运动信息参数:各个方向的重力加速度、旋转方向角度等等...,其它的用法都差不多,只是相关的方法名称、属性名称和返回的参数类型和值不同,详情可以看demo,注释还算清晰;对于眼镜的绘制可以看下我之前的笔记:CALayer系列、CGContextRef、UIBezierPath...//图片始终保持垂直方向 imageView2.transform = CGAffineTransformMakeRotation(rotation); }]; 三、环境光感处理器...利用摄像头获取环境光感参数,通过摄像头采集环境参数,然后在代理方法中输出,光感越小,环境越暗,然后根据需要做相应的操作。

    1.4K60

    UIAlertView、UIActionSheet、UIAlertController使用

    defaultAlert.gif 其中,"查看"的buttonIndex == 1,"评论"的buttonIndex == 2,"取消"的buttonIndex == 0 2.带有明文输入框 - (void...所以UIAlertController有一个preferredStyle属性属性,该属性是个UIAlertControllerStyle类型的枚举值,其值如下: typedef NS_ENUM(NSInteger...想反,如果UIAlertController对象的preferredStyle属性取值为UIAlertControllerStyleAlert,那么其作用和效果就相当于iOS8中被废弃的UIAlertView...我们知道,使用UIAlertView和UIActionSheet需要遵守对应的协议并实现相应的方法,因为UIAlertView和UIActionSheet采用delegate的方式处理事件。...而UIAlertController则采用灵活的block方式处理事件。所以使用UIAlertController不用再遵守某个协议,只需将响应事件的代码写在block中即可。

    6.3K30

    swift2.0 UIImagePickerController 拍照 相册 录像

    系统 ios9.1 语言swift2.0 在app 里最常用的功能就是多媒体选择,首先我们storyboard 创建一个button 用于触发选择事件 @IBAction func selectImageAction...(sender: AnyObject) { } 这时候通常会弹出来一个ActionSheet 上面有拍照 , 相册,录像 和取消 这几项。...(cancelAction) //拍照 let takePictureAction: UIAlertAction = UIAlertAction(title: "拍照", style: .Default...创建完成 仔细看上面的代码你会发现 [self .initWithImagePickView(“拍照”)] 这个函数,我通过这个函数选择imagePicker 不同的参数 首先创建一个 var...Demo下载地址 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/109166.html原文链接:https://javaforall.cn

    35320

    iOS 传感器集锦

    因为这个属性可以设置一个时间间隔,在时间间隔内是不需要再次录入。...这几个传感器都是依赖于苹果官方CoreMotion框架,用法都差不多,先判断各个传感器是否可用开启,然后设置各个传感器的采集频率,接着就开始采集数据,并返回采集到的运动信息参数:各个方向的重力加速度、旋转方向角度等等...,其它的用法都差不多,只是相关的方法名称、属性名称和返回的参数类型和值不同,详情可以看demo,注释还算清晰;对于眼镜的绘制可以看下我之前的笔记:CALayer系列、CGContextRef、UIBezierPath...//图片始终保持垂直方向 imageView2.transform = CGAffineTransformMakeRotation(rotation); }]; 三、环境光感处理器...利用摄像头获取环境光感参数,通过摄像头采集环境参数,然后在代理方法中输出,光感越小,环境越暗,然后根据需要做相应的操作。

    1.5K80

    使用 Unity 来实现 iOS 原生弹框

    第二步 在 Unity 中设置场景 创建新的 Unity 工程,然后保存场景到你的资源文件夹中。 为三个弹框创建三个按钮 ? 第三步 创建脚本然后分配所有按钮的引用 创建一个脚本然后给它命名。...我命名为 PopupView.cs ,现在让我们在代码中添加一个按钮点击的监听事件。 为每一个按钮创建一个方法并且在按钮点击事件添加引用。从 iOS 的对话行为中返回一个枚举存储消息的状态。...IOSNativePopUpsManager dismissCurrentAlert]; } } @end 注意 在这个类中,我们使用 UnitySendMessage() 向 unity 发送一条消息,然后我们使用游戏物体的名字作为参数...必须和创建的游戏物体,特别是弹框类相匹配。 现在创建一个新的文件命名为 IOSNativeUtility 来重定向控制从应用程序到评价页面或者任何其他网页。...有一个游戏开发的想法么?你还在等什么?现在就联系我们吧,不久你就会看到你的想法实现了。 下载完整代码 CSDN链接

    2K30

    在这个行当,不做程序员也得懂技术

    先来捋一捋思路,关于各个岗位合作打造(移动端)产品的一点想法: 为什么只有程序员是不够的 如何做一个好的非程序员 声明: 本人是程序员,截止到目前,我用的设计都是自己设计的,我用的产品策略都是自己的思考...为什么只有程序员是不够的 首先要消除一下歧义,我们见过无数的一人独挑大梁完爆数十人团队的例子,所以事实证明,只有一个程序员,某些时候是足够的。...即便是在移动端出现之前,大家在 PC 上用软件,也是需要有人来做设计,有人来思考产品的。...最近想明白了一件事情:为什么身边好多人我明确地知道他们代码写的比我好,但是做不出好东西?...当然你可以把上面那张图也做出来给程序员预览,防止出错,但是你要明白这个东西是 iOS 系统提供的,UIAlertController 是现成可调用的 API,你要做的是只是提供调用这个 API 需要的参数

    48920

    iOS14开发-UIViewController

    介绍 UIViewController 可以理解为 App 的界面,负责管理 UIView 中显示的内容和用户的交互,主要有以下作用: 负责创建和管理 UIView。 响应用户与视图的交互。...,因为这种方式还需要自己处理 2 件事: (1)将 xib 文件 的File’s Owner的类绑定为 UIViewController。...被代理对象(需要传值的 UIViewController) 声明协议,在协议中定义传值方法,方法的参数个数与类型取决于需要传值的个数和类型。 UIViewController 中声明一个代理属性。...需要传值的 UIViewController 声明一个闭包属性,闭包的参数个数与类型取决于需要传值的个数和类型,闭包的返回值一般为 Void。 在需要传值的地方调用闭包完成传值。...按钮通过 UIAlertAction 添加,有 3 种样式:default、cancel和destructive,一个 UIAlertController 中只能有一个cancel样式的 UIAlertAction

    2.4K20

    iOS开发:实现点击常用控件弹出地区选择框(万能方法)

    前言 在iOS开发中会遇到一些选择选项的需求,而且点击一个控件弹出一个选择框,选择之后展示到前端,然后再把选择的内容传给后台或者做本地存储。...这个需求对于大多数开发者来说可以为小儿科,但是作为一个爱记录的程序猿来说相当可贵,所以还是那句话,只分享给有缘人,大牛可以飘过,不喜勿喷请走开。...1、声明一个全局属性,来接收选择之后的地区名称参数 @property (strong, nonatomic) NSString *changeRegion; // 地区名称 2、在UITableView...} } 实现之后的效果如下图所示: 1.png 这里虽然介绍的是cell的点击事件的弹框处理,其他控件的使用方法类似,比如UIButton、UILabel等控件都可以这样实现地区弹框的选择方法...最后 以上就是本章的全部内容,欢迎关注三掌柜的微信公众号“程序猿by三掌柜”,三掌柜的新浪微博“三掌柜666”,欢迎关注!

    1.7K32
    领券