您的位置:首页 > 移动开发 > IOS开发

Habber - IOS XMPP 客户端 教程 (一)准备工作

2015-12-23 10:58 302 查看

一些准备

Swifty

这是JamalK做的一款swift语言的登录页,程序是用OC写的,通过实践说明swift和OC兼容的很好~


https://github.com/JamalK/Swifty



TSPopoverView

像iPad那样弹出的popover气泡式菜单。由于iPhone默认弹出popover是页面替换而不是气泡式


https://github.com/takashisite/TSPopover

原来的样子:



我们把它当作状态选择的菜单来做,做出来的效果:



UUChatTableView

这是一个封装好的聊天窗口,提供了文字NSString,图片UIImage和语音NSData的接口,
所以我们只需要对其界面进行轻微修改,并使其与我们xmpp得到与发送数据接口实现对接。




最重要的XMPPFramework,在用Xcode7.1.1的时候我在Github上下载到的最新框架编译起来有些问题,看到上面issue反馈的时候别人用老版本的框架用CocoaPods整合直接使用,我就是通过这种方法使用的。(什么是CocoaPods?请参考http://code4app.com/article/cocoapods-install-usage

Start!

导入框架

首先建立我们的项目,就用Single View Application。

建立好之后,我们就可以用CocoaPods来整合XMPPFramework了。

/article/11143933.html

我想做到这里成功的话你已经导入了XMPPFramework框架了,无论你是编译通过了,还是通过cocoapods导入,看上去应该是这样了




成功的话你就可以在Habber里面导入头文件了

#import <XMPP.h>


如果是通过cocoapods导入的话,记得要把两个projects的Architectures改成一致,不然真机调试的话可能不能通过。

Habber -> build settings -> Architectures

Pods -> build settings -> Architectures



导入TSPopover, UUChatTableView

我所导入的libraries:



添加pch支持(如果不知道怎么添加pch请看: Xcode7 建立 pch 文件 (预编译头文件)

#ifndef PrefixHeader_pch

#define PrefixHeader_pch

#import <UIKit/UIKit.h>

#import <Foundation/Foundation.h>

#import "ACMacros.h"

#endif


导入swifty

或许这里我不应该称为导入,我们需要在storyboard中重画这个界面,当然这里的重画意思是把UIImageView,UITextField等几个空间粘贴在storyboard中新画的UIViewController当中。

但注意不要整个viewController都粘贴过来,
因为这个界面是作者一年前写的,用的Xcode版本比较老,
storyboard已经更新了,所以他的旧版本的viewController粘贴过来会导致形变。
你可以自己运行demo查看一下。
我已经给他posted an issue,他说会更新的,也许你下到的会是他更新过的版本。^_^


界面在storyboard中重构完成后,就可以把他的swift类文件直接拖到我们的目录中了,拖的过程中Xcode会问你导入swift进入OC工程要不要建立桥接文件,这里OK建立一个就是了。

关于OC和Swift混合编程我参考的这篇文章,应该算是直接从苹果的帮助文档翻译过来的,简单易懂:在项目里交叉使用Swift和OC

初步的准备工作已经完成,我们的目录看起来是这样的:

(当然这是我的目录,你可以参考下)



下一篇就开始上代码!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: