OC 通讯录 实现的方法
来源:互联网 发布:金蝶kis mac版 编辑:程序博客网 时间:2024/06/04 15:59
//给NSString类添加方法 获取group
#import "NSString+Characters.h"
@implementation NSString (Characters)
- (NSString *)group1:(Person *)person
{
NSString *str = [[person.namesubstringWithRange:NSMakeRange(0, 1)]uppercaseString];
return str;
}
@end
//添加联系人
- (BOOL)addPerson:(Person *)aPerson
{
NSString *str1 = [NSStringstring];
aPerson.group = [str1 group1:aPerson];
NSMutableArray *arr = [_allPersonDicobjectForKey:aPerson.group];
for (Person *pin arr) {
if ([aPerson.nameisEqualToString:p.name]) {
NSLog(@"添加失败");
return NO;
}
}
if ([aPerson.nameisEqualToString:@""] || [aPerson.numberisEqualToString:@""]) {
NSLog(@"添加失败");
return NO;
}else{
NSMutableArray *array = [_allPersonDicobjectForKey:aPerson.group];
if (array == nil) {
NSMutableArray *arr = [NSMutableArrayarray];
[_allPersonDicsetValue:arr forKey:aPerson.group];
[arr addObject:aPerson];
}else{
[array addObject:aPerson];
}
return YES;
}
return 0;
}
//按照号码查询联系人
- (Person *)findPersonWithPhoneNum:(NSString *)aPhoneNum
{
for (NSArray *arrin [_allPersonDicallValues]) {
for (Person *p in arr) {
if ([p.numberisEqualToString:aPhoneNum]) {
return p;
}else{
return nil;
}
}
}
return 0;
}
//按照性别查找联系人并排序
- (NSArray *)findPersonsWithSex:(NSString *)aSex
{
NSMutableArray *array = [NSMutableArrayarray];
for (NSArray *arrin [_allPersonDicallValues]) {
for (Person *pin arr) {
if ([p.sexisEqualToString:aSex]) {
[array addObject:p];
}
}
}
NSSortDescriptor *age = [[NSSortDescriptoralloc]initWithKey:@"age"ascending:YES];
[array sortedArrayUsingDescriptors:@[age]];
return array;
}
//按照姓名查找联系人并修改信息
- (BOOL)changePersonWithName:(NSString *)name phoneNum:(NSString *)aNum sex:(NSString *)aSex age:(NSUInteger)aAge
{
NSString *str = [NSStringstringWithFormat:@"%ld",aAge];
for (NSMutableArray *arrin [_allPersonDicallValues]) {
for (Person *p in arr) {
if ([p.nameisEqualToString:name]) {
if ([nameisEqualToString:@""]&&[aNumisEqualToString:@""]&&[aSexisEqualToString:@""]&&[strisEqualToString:@""]) {
return NO;
}else{
p.age = aAge;
p.number = aNum;
p.sex = aSex;
return YES;
}
}
}
}
return 0;
}
//按照姓名查找联系人并删除联系人,如果此分类没有联系人 删除此分组
- (BOOL)deletePersonWithName:(NSString *)aPersonName
{
NSMutableArray *array = [NSMutableArrayarray];
NSMutableDictionary *dic = [NSMutableDictionarydictionary];
for (NSMutableArray *arrin [_allPersonDicallValues]) {
for (Person *p in arr) {
if ([p.nameisEqualToString:aPersonName]) {
// [arr removeObject:p];
[array addObject:p];
for (Person *pin array) {
[[_allPersonDicobjectForKey:p.group]removeObject:p];
}
if ([arr count] == 0) {
// [_allPersonDic removeObjectForKey:p.group];
[dic setValue:arr forKey:p.group];
for (NSString *strin dic) {
[_allPersonDic removeObjectForKey:str];
}
}
}
}
}
return 0;
}
//按照分组名查找分组并删除
- (BOOL)deleteGroup:(NSString *)aGroupName
{
[_allPersonDicremoveObjectForKey:aGroupName];
NSMutableArray *array = [_allPersonDicobjectForKey:aGroupName];
if (array == nil){
return YES;
}else{
return NO;
}
return 0;
}
//重写description 拼接字符串
- (NSString *)description
{
NSMutableString *str = [NSMutableStringstring];
[str appendString:@"\n"];
NSArray *array =_allPersonDic.allKeys;
for (NSString *keyin array) {
[str appendFormat:@"%@\n",key];
for (Person *pin _allPersonDic[key]) {
[str appendFormat:@"%@",p];
}
}
return str;
}
- OC 通讯录 实现的方法
- OC(实现中等通讯录的操作)
- OC大作业_通讯录的实现
- OC实现中等难度的通讯录
- OC实现简单通讯录
- OC----通讯录实现
- OC实现通讯录
- 实现中等通讯录(OC)
- 简单的通讯录实现方法
- Oc 通讯录的使用
- OC(实现简单通讯录操作)
- OC实现中等难度通讯录
- OC -类似于通讯录的功能
- 通讯录(用结构体的方法实现)
- 模拟实现通讯录-静态的方法
- 模拟实现通讯录-动态的方法
- 模拟实现通讯录-文件的方法
- 实现通讯录分组排序的一个方法
- RTLabel富文本库
- ConvertChineseUnicodeToPyt
- Android DataBinding ViewPage + Fragment 封装
- mysql主从复制搭建
- ionic 、ionic-image-lazy-load网络图片的懒加载和和加载效果,居中显示
- OC 通讯录 实现的方法
- 2016SDAU编程练习二1020
- "围观"设计模式(1)--单一职责原则(SRP,Single Responsibility Principle)
- Hystrix学习(5)HelloWorld
- Nginx安装
- Nginx优化教程 实现突破十万并发
- bzoj 2815: [ZJOI2012]灾难|倍增lca|思路题
- Freedom Netkeeper宽带拨号工具
- 极光推送Java SDK源码学习