分享一个搜索历史工具类

WechatIMG1.jpeg

.h文件

#import <Foundation/Foundation.h>

@interface YPSearchTool : NSObject

@property (nonatomic, strong) NSMutableArray *SearchDataArray;
/**
 *    添加搜索历史
 *    @param searchStr 新加的输入条目
 */
+ (void)addSearchRecord:(NSString *)searchStr;

/**
 *    获取所有的搜索历史
 *    @return 搜索历史 字符数组
 */
+ (NSArray *)getAllSearchHistory;

/**
 *    清空搜索历史
 */
+ (void)clearAllSearchHistory;

@end

.m文件

#import "YPSearchTool.h"
#define RecordCount 3      //存储数量
#define SEARCH_HISTORY [[NSUserDefaults standardUserDefaults] arrayForKey:@"SearchHistory"]
@implementation YPSearchTool
+ (void)addSearchRecord:(NSString *)searchStr
{
    NSMutableArray *searchArray = [[NSMutableArray alloc]initWithArray:SEARCH_HISTORY];
    if (searchArray == nil) {
        searchArray = [[NSMutableArray alloc]init];
    } else if ([searchArray containsObject:searchStr]) {
        [searchArray removeObject:searchStr];
    } else if ([searchArray count] >= RecordCount) {
        [searchArray removeObjectsInRange:NSMakeRange(RecordCount - 1, [searchArray count] - RecordCount + 1)];
    }
    [searchArray insertObject:searchStr atIndex:0];
    [[NSUserDefaults standardUserDefaults] setObject:searchArray forKey:@"SearchHistory"];
}

+ (NSArray *)getAllSearchHistory
{
    return SEARCH_HISTORY;
}

+ (void)clearAllSearchHistory
{
    [[NSUserDefaults standardUserDefaults] setObject:[[NSMutableArray alloc]init] forKey:@"SearchHistory"];
}
@end
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ## 可重入函数 ### 可重入性的理解 若一个程序或子程序可以安全的被并行执行,则称其为可重入的;即当该子程序正...
    夏至亦韵阅读 730评论 0 0
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,589评论 9 467
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,239评论 2 33
  • 今天是写反思日记的第十一天 工作上:今天的工作并不怎么让人愉快,工作上的事情做的不多,一早上都在设计院等人了,下午...
    虎皮尖椒阅读 211评论 0 0
  • 曾经无数次纠结,微信公众号和简书,到底要选择哪个。终于,朋友圈里泛滥的点赞让我倦怠,而后我选择了后者,选择了...
    旧情是路_旧人是树阅读 407评论 0 1