联系人列表
本文会引导您构建联系人界面。
效果展示
如果您事先没有添加过联系人,加载出来的联系人界面是空的。添加联系人后,联系人会显示在界面列表中,如下图所示:
联系人列表为空 | 联系人列表非空 |
| |
开发环境要求
Xcode 10 及以上
iOS 9.0 及以上
前置条件
在构建界面之前,请确保您已经完成了以下 4 件事:
1. 在控制台创建了一个应用。
2. 在控制台创建了一些用户账号。
3. 集成了
TUIKit
或 TUIContact
。4. 调用
TUILogin
的 login
接口登录组件。注意:
1. 所有组件都是这个登录接口。每次启动应用,登录一次即可。
2. 请确保登录成功,我们建议您在登录成功的回调里进行下文的操作。
如果您已经完成,请继续阅读下文。
步骤说明
联系人界面只需创建
TUIContactController
对象并显示出来即可。示例代码如下:
#import "TUIContactController_Minimalist.h"// ContactController is your own ViewController@implementation ContactController- (void)viewDidLoad {// Create TUIContactController_MinimalistTUIContactController_Minimalist *vc = [[TUIContactController_Minimalist alloc] init];// Option 1: push vc.[self.navigationController pushViewController:vc animated:YES];// Option 2: add vc to your own ViewController.// [self addChildViewController:vc];// [self.view addSubview:vc.view];}@end
#import "TUIContactController.h"// ContactController is your own ViewController@implementation ContactController- (void)viewDidLoad {// Create TUIContactControllerTUIContactController *vc = [[TUIContactController alloc] init];// Option 1: push vc.[self.navigationController pushViewController:vc animated:YES];// Option 2: add vc to your own ViewController.// [self addChildViewController:vc];// [self.view addSubview:vc.view];}@end
联系人界面功能分区如下图所示:
TUIContact
对该界面的点击行为做了默认处理,如下:动作 | 效果 |
点击 New Contacts | 展示未处理的加好友请求 |
点击 Group Chats | 展示当前登录账号的所有群聊 |
点击 Blocked List | 展示当前登录账号的黑名单 |
点击联系人头像 | 进入联系人管理界面 |
点击右上角界面 + 号 | 弹出 Add to Contacts ,Add Group 菜单 |
其中,点击联系人头像、点击
Add to Contacts
、点击 Group Chats
的行为,您可以通过实现 TUIContactControllerListener
中的方法自定义:@protocol TUIContactControllerListener_Minimalist <NSObject>@optional- (void)onSelectFriend:(TUICommonContactCell *)cell;- (void)onAddNewFriend:(TUICommonTableViewCell *)cell;- (void)onGroupConversation:(TUICommonTableViewCell *)cell;@end
@protocol TUIContactControllerListener <NSObject>@optional- (void)onSelectFriend:(TUICommonContactCell *)cell;- (void)onAddNewFriend:(TUICommonTableViewCell *)cell;- (void)onGroupConversation:(TUICommonTableViewCell *)cell;@end