1.一种更新导航栏的方法,其特征在于,包括:
S1、当启动标签栏控制器时,向服务器发送是否更新导航栏的请求,并接收所述服务器回复的导航栏数据,所述导航栏数据中含有一定数量个待更新的信息;
S2、当所述导航栏数据的类型为数组时,将所有所述待更新的信息进行排序,删除本地的导航栏数据并保存排序后的导航栏数据;以及S3、基于本地的导航栏数据中所有待更新的信息的顺序,依次更新本地的导航栏数据的信息;
所述步骤S2包括:
S2.1、判断所述导航栏数据的类型是否为数组,其中所述导航栏数据中含有一定数量个待更新的信息,任意一个待更新的信息含有唯一编码;
S2.2、当所述导航栏数据的类型为数组时,将所述导航栏数据转换为第二数组并存储在本地,所述第二数组中每个所述待更新的信息的类型为模型;以及S2.3、基于所述第二数组中的每个待更新的信息的唯一编码,对所有待更新的信息进行排序,获得第三数组。
2.如权利要求1所述的更新导航栏的方法,其特征在于,步骤S2还包括:当所述导航栏数据的类型不为数组时,保留本地的导航栏数据。
3.如权利要求1所述的更新导航栏的方法,其特征在于,所述步骤S2.2具体包括:S2.2.1、当所述导航栏数据的类型为id类型时,将所述导航栏数据的类型强制转换为数组,获得第一数组,所述第一数组中每个所述待更新的信息的类型为字典;以及S2.2.2、将所述第一数组中各待更新的信息的类型转化为模型,获得所述第二数组。
4.如权利要求1所述的更新导航栏的方法,其特征在于,所述步骤S1中向服务器发送是否更新导航栏的请求,具体包括:使用语句Networking getWithUrl向服务器发送是否更新导航栏的请求。
5.如权利要求3所述的更新导航栏的方法,其特征在于,所述步骤S2.1中判断所述导航栏数据的类型是否为数组,具体包括:使用response isKindOfClass:[NSArray class]语句判断所述导航栏数据的类型是否为数组。
6.如权利要求3所述的更新导航栏的方法,其特征在于,所述步骤S2.2.1中将所述导航栏数据的类型强制转换为数组,具体包括:使用语句NSArray*deserializedArray=(NSArray*)response将所述导航栏数据的类型强制转换为数组。
7.如权利要求3所述的更新导航栏的方法,其特征在于,所述步骤S2.2.2中将所述第一数组中各待更新的信息的类型转化为模型,具体包括:使用函数WSOneMenuModel objectArrayWithKeyValuesArray,将所述第一数组中各待更新的信息的类型转化为模型。
8.如权利要求1所述的更新导航栏的方法,其特征在于,所述步骤S2.3具体包括:基于所述第二数组中的每个待更新的信息的唯一编码,使用getTabbarArr函数对所有待更新的信息进行排序,获得所述第三数组。
9.一种更新导航栏的装置,其特征在于,包括:
接收模块,用于在启动标签栏控制器时,向服务器发送是否更新导航栏的请求,并接收所述服务器回复的导航栏数据,所述导航栏数据中含有一定数量个待更新的信息;
排序模块,用于当所述导航栏数据的类型为数组时,将所有所述待更新的信息进行排序,删除本地的导航栏数据并保存排序后的导航栏数据;以及更新模块,用于基于本地的导航栏数据中所有待更新的信息的顺序,依次更新所述导航栏数据中的信息;
所述排序模块具体用于:
判断所述导航栏数据的类型是否为数组,其中所述导航栏数据中含有一定数量个待更新的信息,任意一个待更新的信息含有唯一编码;
当所述导航栏数据的类型为数组时,将所述导航栏数据转换为第二数组并存储在本地,所述第二数组中每个所述待更新的信息的类型为模型;以及基于所述第二数组中的每个待更新的信息的唯一编码,对所有待更新的信息进行排序,获得第三数组。