码迷,mamicode.com
首页 > 移动开发 > 详细

iOS-XMPP客户端

时间:2015-09-20 17:38:11      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:

首先我们自己做一个的IOS客户端程序

先看一下我们完成的效果图

技术分享

技术分享

技术分享

首先下载xmppframework这个框架

技术分享

点ZIP下载

接下来,用Xcode新建一个工程

将以下这些文件拖入新建工程中

技术分享

技术分享

加入framework

技术分享

技术分享

到这里我们就全部设好了,跑一下试试,看有没有错呢

如果没有错的话,我们的xmppframework就加入成功了。

 

我们设置我们的页面如下图:

技术分享

我们的KKViewController.h

 技术分享

KKViewController.m

技术分享

技术分享

这里的代码相信大家学过UITableView的话应该很熟悉了,如果不知道的话,就查一下UITableView的简单应用学习一下吧

接下来是登录的页面

技术分享

KKLoginController.m

技术分享

下面是聊天的页面

技术分享

这里着重的还是UITableView

KKChatController.m

技术分享

这些都比较简单,相信大家应该都能看得懂

 

为了方便程序调用,我们把XMPP的一些主要方法写在AppDelegate中

技术分享

在AppDelegate.m下这几个方法为:

技术分享

技术分享

这几个是基础方法,接下来就是XMPPStreamDelegate中的方法,也是接受好友状态,接受消息的重要方法

技术分享

技术分享

这里面有两个委托方法,一个是用户列表委托,还有一个就是消息委托,用户列表委托主要就是取得在线用户,更新用户TableView,消息委托就是取得好友发送的消息,并更新消息TableView,当然这两个TableView是在不同的Controller中的

技术分享

定义完两个委托,我们就要在不同的Controller中实现这两个委托了

在好友Controller中实现<KKChatDelegate>并写入如下方法

技术分享

在viewDidLoad中加入

技术分享

这两行代码,让好友列表的委托实现方法在本程序中

 

在viewWillAppear中加入

技术分享

判断本地保存的数据中是否有userId,没有的话就跳转到登录页面

 

这里最重要的就是connect了,这一句话就是登录这是我们要显示的消息,每一条消息为一条字典

 

接下来就是每一条消息的显示了

了,成功的话,页面就会显示好友列表了。

技术分享

下面是聊天Controller了

在KKChatController.h中加入

技术分享

这是我们要显示的消息,每一条消息为一条字典

 

接下来就是每一条消息的显示了

技术分享

跟上面好友Controller一样,这里我们也需要XMPPStream

技术分享

在ViewDidLoad中加入

技术分享

设定消息委托由自己来接收和处理

技术分享

接下来最重要的就是发送消息了

技术分享

技术分享

下面是我们主要介绍如何来美化我们的聊天程序,看一下最终效果呢,当然源程序也会在最后放出

技术分享

好了,我们来看一下我们写的程序

这里我们自定义了TableViewCell

技术分享

一行是显示发布日期,一行是显示发送的消息,还有一个是背景

技术分享

定义好,在UITableViewCell中将Cell改成我们自己定义的Cell

技术分享

技术分享

在这个Cell里设置了发送的消息的背景图和接收消息的背景图

 

这里在字典里有一个"time"

这是我们接收和发送消息的时间

技术分享

在AppDelegate.m中

 

将我们收到消息的内容也做一下调整

技术分享

最后我们再设置一下每一行显示的高度

技术分享

,对了,在发送消息的时候,别忘了也加上

技术分享

 

iOS-XMPP客户端

标签:

原文地址:http://www.cnblogs.com/jiafuyang/p/4823768.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!