iOS 利用UserDefaults快速实现常用搜索页记录工具
1.需求分析
一般搜索页的历史记录需求
- 存储内容为字符串
- 存储内容要去重
- 存储个数会有个上限
- 存储个数达到上限后要先前挤掉旧数据,保留新数据
- 调用动作一般为 存 / 读 / 清空一律
2.实现
.h文件
// RPCustomTool.h// RollingPin//// Created by RollingPin on 2020/12/31.// Copyright © 2020 RollingPin. All rights reserved.//#import <Foundation/Foundation.h>#import <UIKit/UIKit.h>@interface RPCustomTool : NSObject/// 存+ (void)saveHistoryString:(NSString *)saveStr;/// 读+ (NSArray *)readHistoryList;/// 清空+ (void)deleteHistoryList;@end.m文件
// RPCustomTool.h// RollingPin//// Created by RollingPin on 2020/12/31.// Copyright © 2020 RollingPin. All rights reserved.//#import "RPCustomTool.h"@implementation RPCustomTool#pragma mark - 存+ (void)saveHistoryString:(NSString *)saveStr{ NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; NSArray *savedArray = [userDefaults arrayForKey:@"RPSearchHistoryMark"]; NSMutableArray *savedMuArray = [[NSMutableArray alloc]initWithArray:savedArray]; //去重 NSString *repetitiveStr = @""; for (NSString * oneStr in savedArray) { if ([oneStr isEqualToString:saveStr]) { repetitiveStr = oneStr; break; } } if (repetitiveStr.length >0) { [savedMuArray removeObject:repetitiveStr]; } [savedMuArray addObject:saveStr]; //设置最大保存数 if(savedMuArray.count > 10) { [savedMuArray removeObjectAtIndex:0]; } //最后再存储到NSUserDefaults中 [userDefaults setObject:savedMuArray forKey:@"RPSearchHistoryMark"]; [userDefaults synchronize];}#pragma mark - 读+ (NSArray *)readHistoryList{ NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; //读取数组NSArray类型的数据 NSArray *savedArray = [userDefaults arrayForKey:@"RPSearchHistoryMark"]; NSLog(@"savedArray======%@",savedArray); return [savedArray copy];}#pragma mark - 清空+ (void)deleteHistoryList{ NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; [userDefaults setObject:[NSArray array] forKey:@"RPSearchHistoryMark"]; [userDefaults synchronize];}@end说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » iOS 利用UserDefaults快速实现常用搜索页记录工具
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » iOS 利用UserDefaults快速实现常用搜索页记录工具