做了将近三个月的公司项目了,每天接触到最多的就是xml,可能项目目标客户的原因,我一点也摸不到json数据,真是羡慕你们呐,好了,回归正题。
关于解析xml的前期环境配置工作我就不多说啦,今天主要聊一下动态的去解析xml,根据获得动态xml的内容,来为布置ui做准备。我自己喜欢的解析方式就是xpath,用“//”自动寻找节点,当然前提你要和后台沟通好,正常情况下就是直接“./”一个一个节点的去搜吧。比如一个页面当中,所有的数据源都是动态的,那么意味着他的ui也是动态,控件也是动态的,我们唯一的突破口,就是他的element ,准备好尽可能多的数组,在这个环节,你是无法建立数据模型的,因为属性的个数和类型都是动态的!你们可能会说,这么坑爹的东西,也碰的到,没错就是碰到了
大致的一个流程,就是1建立数组 2调接口获得xml原始数据3根据array的count建立相应的view划分或者控件(这个东西太玄乎,你们遇到一定能体会)4然后根据相应的数值放到控件中 举个我遇到棘手的例子 因为要制作一个table 无法用tableview 只能两个for循环手动制表 添加手势 更加当前控件状态 满足相应的业务需求 其次就是动态完成页面排版的时候 就要开始相应的根据用户操作改xml节点值或者添加新的节点 哎哎 这块 真的 逻辑判断很复杂 我建议在控件标tag值 或者监听方法 然后根据输入的内容 修改xml节点,就这个样子 ,大晚上心情好,随笔写点,反正没人看的