YWChooseAddressView
高仿淘寶地區(qū)選擇器、編輯與新增地址UI
一、UI效果圖
高仿淘寶地區(qū)選擇器、編輯與新增地址UI
二、具體功能:
1、可直接從通訊錄獲取聯(lián)系人信息(姓名、電話)
2、可是用封裝好的高仿淘寶UI直接進(jìn)行新增或編輯地址信息
三、推薦使用CocoaPods
方式集成
1、在podfile文件中添加,然后執(zhí)行 pod install
操作
pod 'YWChooseAddressView', '~> 1.0.8'
2、在基類或者將要使用的界面導(dǎo)入YWAddressDataTool
,本地初始化地區(qū)信息數(shù)據(jù)庫
#import "YWAddressDataTool.h"
- (void)viewDidLoad {
[super viewDidLoad];
// 開啟異步線程初始化數(shù)據(jù)
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
// 預(yù)加載地區(qū)信息到本地?cái)?shù)據(jù)庫(避免UI卡頓)
[[YWAddressDataTool sharedManager] requestGetData];
});
}
3、如果使用高仿淘寶UI
則直接導(dǎo)入YWUI文件夾中的YWAddressViewController.h
// 這里傳入需要編輯的地址信息(如果為新增地址則無需傳入model)
YWAddressViewController *addressVC = [[YWAddressViewController alloc] init];
YWAddressInfoModel *model = [YWAddressInfoModel alloc];
model.phoneStr = @"18888888888";
model.nameSrt = @"袁偉";
model.areaAddress = @"四川省成都市武侯區(qū)";
model.detailAddress = @"下一站都市B座406";
model.isDefaultAddress = YES; // 如果是默認(rèn)地址則傳入YES
addressVC.model = model;
// 保存后的地址回調(diào)
addressVC.addressBlock = ^(YWAddressInfoModel *model) {
NSLog(@"用戶地址信息填寫回調(diào):");
NSLog(@"姓名:%@", model.nameStr);
NSLog(@"電話:%@", model.phoneStr);
NSLog(@"地區(qū):%@", model.areaAddress);
NSLog(@"詳細(xì)地址:%@", model.detailAddress);
NSLog(@"是否設(shè)為默認(rèn):%@", model.isDefaultAddress ? @"是" : @"不是");
};
[self.navigationController pushViewController:addressVC animated:YES];
4、如果使用高仿淘寶UI
則還需在Info.plist
中添加通訊錄權(quán)限
key值:Privacy - Contacts Usage Description
value值:如果不允許,則無法從通訊錄中選擇聯(lián)系人信息
Github地址:https://github.com/90candy/YWChooseAddressView