QQ demo展示

录屏

QQ录屏

讲解

这个QQ demo是在实习期间制作的一个仿照QQ的iOS应用程序,纯代码编写,使用了AFNetworkingSDWebImageYYModelMJRefresh等框架,具有基本的界面,与QQ大体相似。
录屏是制作后期录制的,不是最终版(最终版忘记录制了),但与最终版除了“我的”界面改成了与QQ一样的“动态”界面,其他界面大体一致。
跟随录屏:首先点开进入,首页是消息界面,第二页是联系人界面,第三页是看点界面,第四页是动态界面(录屏上是我的界面)。

看点界面

导航栏右侧是刷新按钮(后面去掉了,改成下拉刷新),可以重新请求,刷新当前页面。
看点页面上是一条条新闻预览,包括封面图片、标题和新闻来源与时间
点进其中一条新闻,展示的是详情界面,使用了WKWebView来加载这条新闻的URL。页面上自定义了返回按钮和更多按钮,更多按钮可以使得页面后退、前进、刷新(后面去掉了更多按钮,通过判断[self.webView canGoBack]来使得点击返回按钮是返回上一个网页还是返回根视图控制器)

联系人界面

导航栏右侧有添加好友的按钮,点击跳转至添加好友界面,在搜索框输入QQ号/手机号搜索QQ好友,但没有后台,具体逻辑还未实现。
联系人界面和消息界面都有搜索框,点击展示搜索界面,点击搜索界面的取消按钮返回上一级,点击搜索按钮的逻辑还未实现。
联系人界面的新朋友群通知这两个cell点击进去的界面还未实现。
联系人界面上展示联系人列表,下拉可刷新。
点击某个联系人进入的是该联系人的个人信息界面,展示了该联系人的头像、备注、QQ号、个性签名、昵称、性别、生日、家乡、职业、公司、邮箱、个人说明等信息。导航栏右侧按钮是联系人设置按钮,点击进入联系人设置界面,可对联系人进行设置,与QQ的联系人设置界面几乎一致,但具体逻辑未实现。

消息界面

消息界面和其他三个界面的导航栏左侧都是自己的头像、昵称和在线状态,点击可跳转至自己的个人信息界面,可看到自己的个人信息。右侧是拍摄按钮和更多按钮,点击更多按钮时,通过UIPopoverPresentationViewController展示类似QQ的弹出框,弹出框内容包括创建群聊、加好友/群、一起派对、扫一扫、面对面快传、收付款等,点击跳转至相应页面。
消息界面上是消息列表,可下拉刷新。
每条消息展示头像、备注、最新一条消息内容及其时间,左滑有删除该消息的选项。

聊天界面

点击一条消息进入聊天界面,标题是对方的备注,有返回按钮和聊天设置按钮。点击聊天设置按钮进入聊天设置界面,与QQ的聊天设置页面基本一致,但具体逻辑未实现。
在聊天界面点击消息输入框,弹出键盘,输入要发送的消息,点击发送可将消息发送到当前界面上,但暂时还无后台,已发送的消息不会更新到聊天记录,重新进入界面不会显示。
聊天界面上展示消息时间、消息内容、对方头像和自己的头像。点击对方头像展示对方的个人信息,点击自己的头像将展示自己的个人信息。消息框会根据消息内容调整,完整展示消息内容。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对IT的憧憬、向往!此时此景,笔者只专注Android、Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景! Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除,从账户中取出amt,如果amt>账户余额抛出异常,一个实体Bean可以表示不同的数据实例,我们应该通过主键来判断删除哪个数据实例…… ejbCreate函数用于初始化一个EJB实例 5个目标文件,演示Address EJB的实现 ,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口函数得到远程接口的引用,用远程接口的引用访问EJB。 EJB中JNDI的使用源码例子 1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上直接地使用它,但是它的主要作用是供程序使用的。本规范尝试满足大型主机、微型主机、个人工作站、和TACs 的不同需求。例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天通信演示代码 2个目标文件,一个服务器,一个客户端。 Java Telnet客户端实例源码 一个目标文件,演示Socket的使用。 Java 组播组中发送和接受数据实例 3个目标文件。 Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密   Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。   设定字符串为“张三,你好,我是李四”   产生张三的密钥对(keyPairZhang)   张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节   通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息…… Java利用DES私钥对称加密代码实例 同上 java聊天室 2个目标文件,简单。 java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥   Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从文件中得到公钥编码的字节数组、如何从字节数组解码公钥。 Java数据压缩与传输实例 1个目标文件 摘要:Java源码,文件操作,数据压缩,文件传输   Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲
©️2021 CSDN 皮肤主题: 1024 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值