易语言yy频道源码

易语言yy频道源码,第1张

。。。。

------------绑定频道源码----------------------

.版本 2

.支持库 eAPI

.程序集 窗口程序集1

.子程序 __启动窗口_创建完毕

时钟1.时钟周期 = 500

.子程序 _时钟1_周期事件

.局部变量 系统进程列表, 进程信息, , "0"

.局部变量 所有窗口标题, 文本型, , "0"

.局部变量 x, 整数型

.局部变量 y, 整数型

.局部变量 YY进程, 文本型

.局部变量 频道ID, 文本型

.局部变量 频道名称, 文本型

.局部变量 打开频道, 逻辑型

时钟1.时钟周期 = 0

打开频道 = 假

YY进程 = “duospeak.exe”

频道ID = “189689” ' 根据自己的频道修改

频道名称 = 【鬼火涅磐】<h1>涅磐重生!”

系统进程列表 = 取系统进程列表 ()

.计次循环首 (取数组成员数 (系统进程列表), x)

.如果真 (到大写 (YY进程) = 到大写 (系统进程列表 [x].进程名称))

所有窗口标题 = 取所有窗口列表 ()

.计次循环首 (取数组成员数 (所有窗口标题), y)

.如果真 (寻找文本 (取窗口标题 (到数值 (所有窗口标题 [y])), 频道ID, 0, 假) > 0)

.如果真 (寻找文本 (取窗口标题 (到数值 (所有窗口标题 [y])), 频道名称, 0, 假) > 0)

打开频道 = 真

跳出循环 ()

.如果真结束

.如果真结束

.计次循环尾 ()

.如果真结束

.计次循环尾 ()

.如果真 (打开频道 = 假)

信息框 (“请打开YY并进入频道:” + 频道ID + “,再打开软件!”, 0, “错误提示”)

销毁 ()

.如果真结束

时钟1.时钟周期 = 500

------------------------------------------------------

删除绑定的话 在源码里把这段删除就OK了

​ iOS源码解析—YYModel(YYClassInfo) 分析了如何根据OC的Class对象构建YYClassInfo对象,为接下来的JSON数据和Model转换作准备,这篇文章开始讲解NSObject+YYModel。

​ 分析NSObject+YYModel.h文件,包括3个Category和一个protocol,分别是:

字典studentDic中的key对应原字典playerDic中的key,studentDic中的Model由playerDic中的value转化得到。

首先定义了两个类,_YYModelMeta和_YYModelPropertyMeta,分别封装了Model的信息和Model中各属性的信息。

_YYModelMeta维护了Class的相关信息,下面是注释:

_YYModelMeta是通过YYClassInfo对象的信息构建得到的。首先调用metaWithClass:cls方法,该方法如下:

维护了一个键值对cache作为缓存,用cls作为key,调用CFDictionaryGetValue方法去缓存中查找,如果有,直接返回构建好的_____YYModelMeta对象,如果没有找到或者needUpdate属性标记为true,则根据cls创建一个新的_YYModelMeta对象,并且存入缓存。这样不需要每次都创建,提高了性能。

接下来看一下initWithClass:方法,

下面分析几个重要的方法:

YYModel的总体思想是以Model属性的类型为准,如果JSON中对应名称的value的类型和Model属性类型不一致,会对value的类型进行转化,保证和Model属性的类型一致。如果兼容不了,不进行属性赋值。下面分析一下ModelSetValueForProperty方法:

该方法上文中提到该方法是用来JSON转成Model的过程中对Model中的属性进行赋值的方法,该方法做了部分基本类型的兼容:

YYModel还提供了一些工具方法,下面简单分析一下:

YYModel作为一个负责JSON数据和Model转化的库,十分易用和高效,特别是做了一些类型的兼容和转化,避免了服务端接口数据类型和客户端Model对象类型不兼容导致的问题,例如执行了不存在的方法而导致崩溃。另一方面,对YYModel的学习在一定程度也促进了对runtime机制的学习和了解。

关于YYModel的分析到这儿先告一段落,由于本人的iOS基础有待提升,再加上表达能力有限,文中许多地方的分析和思路,表达的不是很准确和清楚,希望通过今后的学习和练习,提升自己的水平。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/503947.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-17
下一篇2023-06-17

发表评论

登录后才能评论

评论列表(0条)

    保存