• Stars
    star
    252
  • Rank 161,312 (Top 4 %)
  • Language
    Objective-C
  • Created about 8 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

博爱微信,使用原生 frame + MVVM + MVC + QMUIKit + BAKit 开源的微信

BAWeChat

BAHome Team Name

1、功能及简介

  • 1、博爱微信,使用原生 frame + MVVM + MVC + 『QMUIKit』 + BAKit 开源的微信
  • 2、展示图中的 FPS 是模拟器的数据,真机 iPhone 6上最低50, iPhone 7上最低59,基本上都在 58 以上,代码规范,新手学习可以做个参考
  • 3、注意:如果运行报错,请先 执行: pod setup 更新下本地的pod spec 库,更新时间漫长,需要耐心等待,然后再 执行:pod update --verbose --no-repo-update 更新pod,然后再运行!
  • 4、全局使用 原生 frame 布局,完美适配横竖屏
  • 5、使用 『QMUIKit』 框架快速搭建高性能项目框架,含全局配置文件再次封装,小伙伴儿们可以直接使用,无需采坑
  • 6、朋友圈,采用 MVVM 框架布局,流畅的不能再流畅
    • 数据全部采用 json 数据
    • model 仿照新浪微博 的数据结构定制
    • 图片全部实现网路图片,png、gif动图,九宫格图片完美封装,使用 YYImage
    • 图片浏览器使用 MWPhotoBrowser
    • 原文使用 『MLLabel』 ,实现文字内容解析,URL、电话号码等可以单独处理,详见源码
    • 原文实现微信文字长按复制收藏功能
    • 评论功能动态更新布局
  • 7、通讯录,博爱出品,完美封装通讯录中英文混合排序,可以直接使用,代码简洁,一目了然
  • 8、搜索,使用 『QMUIKit』 框架搜索功能,功能强大
  • 9、系统通讯录获取并重新定制,使用 『PPGetAddressBook』 源码
  • 10、博爱自定义键盘的封装,让你的评论、聊天就是这么简单
  • 11、各种转场动画封装,详见源码
  • 12、各种启动动画封装,详见源码
  • 13、网络库使用 『BANetManager』
  • 14、还有很多功能封装,详见源码 BAKit

2、图片示例

通讯录.png 搜索.png 发现.png 朋友圈.gif 评论.png 图片浏览器.png 我.png

3、安装、导入示例和源码地址

4、BAWeChat 的类结构及 demo 示例

发现-类结构.png

BATimeLineViewModel.h

#import <Foundation/Foundation.h>

@class BATimeLineModel;
@interface BATimeLineViewModel : NSObject

/*! 原始数据 */
@property (nonatomic, strong) BATimeLineModel *model;

/*! 头像的 frame */
@property (nonatomic, assign) CGRect iconImageViewFrame;

/*! 昵称的 frame */
@property (nonatomic, assign) CGRect nameLabelFrame;

/*! 正文的 frame */
@property (nonatomic, assign) CGRect contentLabelFrame;

/*! 时间的 frame */
@property (nonatomic, assign) CGRect timeLabelFrame;

/*! 点赞和评论按钮的 frame */
@property (nonatomic, assign) CGRect operationButtonFrame;

/*! 来源的 frame */
@property (nonatomic, assign) CGRect sourceLabelFrame;

/*! 原创朋友圈的 frame */
@property (nonatomic, assign) CGRect originalContentViewFrame;

/*! 图片 View 的 frame */
@property (nonatomic, assign) CGRect photoViewFrame;

/*! 评论 Label 的 frame */
@property (nonatomic, assign) CGRect commentLabelFrame;

/*! 评论 View 的 frame */
@property (nonatomic, assign) CGRect commentViewFrame;


/*! cell的高度 */
@property (nonatomic, assign) CGFloat cellHeight;

/*! cell的内容Frame */
- (void)setUpContentFrame;

@end

BATimeLineModel.h

#import <Foundation/Foundation.h>

@class BAUser, BATimeLineCommentModel;
@interface BATimeLineModel : NSObject

/*!
 *  发表用户
 */
@property (nonatomic, strong) BAUser *user;

/*!
 *  创建时间
 */
@property (nonatomic, copy) NSString *created_time;

/*!
 *  发表内容
 */
@property (nonatomic, copy) NSString *content;

/*!
 *  朋友圈来源
 */
@property (nonatomic, copy) NSString *source;

/*!
 *  配图数组(BAPhoto)
 */
@property (nonatomic, strong) NSArray <NSString *>*pic_urls;

/*!
 *  内容 ID
 */
@property (nonatomic, copy) NSString *contentId;

/*!
 *  内容的评论
 */
@property (nonatomic, strong) NSArray <BATimeLineCommentModel *>*comments;


@end

@interface BATimeLineCommentModel : NSObject

@property (nonatomic, copy) NSString *commentContent;

@property (nonatomic, strong) BAUser *firstUser;
@property (nonatomic, strong) BAUser *secondUser;

@property (nonatomic, copy) NSAttributedString *attributedContent;

@end

demo 示例

其他示例可下载demo查看源码!

5、更新记录:【倒叙】

欢迎使用 【BAHome】 系列开源代码 ! 如有更多需求,请前往:【https://github.com/BAHome】

最新更新时间:2017-11-21 【倒叙】 最新Version:【Version:1.1.3】
更新内容:
1.1.3.1、更新 BANetManager 的 二次封装示范,小伙伴可以直接拖出去使用了!记得是最新版的 2.3.8 的封装哦!

最新更新时间:2017-06-29 【倒叙】 最新Version:【Version:1.1.2】
更新内容:
1.1.2.1、全新 BAKit 1.0 beat 版、QMUI 1.7.2 版本适配

最新更新时间:2017-05-22 【倒叙】 最新Version:【Version:1.1.1】
更新内容:
1.1.1.1、修复朋友圈点赞评论按钮展开后,滑动不隐藏问题(感谢 群里@武汉-老痒 的 bug 反馈!)

最新更新时间:2017-05-17 【倒叙】 最新Version:【Version:1.1.0】
更新内容:
1.1.0.1、完美适配朋友圈的横竖屏
1.1.0.2、新增『BANetManager』『BAAlert』『BAPickView』『BAButton』等 BAKit 系列 pod 版本使用

6、bug 反馈

1、开发中遇到 bug,希望小伙伴儿们能够及时反馈与我们 BAHome 团队,我们必定会认真对待每一个问题!

2、以后提需求和 bug 的同学,记得把 git 或者博客链接给我们,我直接超链到你们那里!希望大家积极参与测试!

7、BAHome 团队成员

1、QQ 群 479663605
【注意:此群为 2 元 付费群,介意的小伙伴儿勿扰!】

孙博岩
QQ:137361770
git:https://github.com/boai
简书:http://www.jianshu.com/u/95c9800fdf47
微博:

马景丽
QQ:1253540493
git:https://github.com/MaJingli

陆晓峰
QQ:442171865
git:https://github.com/zeR0Lu

陈集
QQ:3161182978
git:https://github.com/chenjipdc
简书:http://www.jianshu.com/u/90ae559fc21d

任子丰
QQ:459643690
git:https://github.com/renzifeng

吴丰收
QQ:498121294

石少庸
QQ:363605775
git:https://github.com/CrazyCoderShi
简书:http://www.jianshu.com/u/0726f4d689a3

8、开发环境 和 支持版本

开发使用 最新版本 Xcode,理论上支持 iOS 8 及以上版本,如有版本适配问题,请及时反馈!多谢合作!

9、感谢

感谢 BAHome 团队成员倾力合作,后期会推出一系列 常用 UI 控件的封装,大家有需求得也可以在 issue 提出,如果合理,我们会尽快推出新版本!

BAHome 的发展离不开小伙伴儿的信任与推广,再次感谢各位小伙伴儿的支持!

More Repositories

1

BABaseProject

一个基于 MVVM 和 MVC 设计模式的基本项目框架,项目用到的各种类,各种封装,各种三方库的综合项目,欢迎大家使用!
Objective-C
470
star
2

BANetManager

基于AFNetworking 3.0、3.1最新版本的封装,集成了 get / post / put / delete 方法请求数据,单图/多图上传,视频上传/下载,网络监测 等多种网络请求方式,
Objective-C
339
star
3

BAButton

自定义button
Objective-C
149
star
4

BADemoTest

ios开发中重难点展示!【基本每天一更】需要的时候记得重新下载最新版本哦!Demo已经迁移,请看readme!
Objective-C
110
star
5

BACustomAlertView

目前为止,最为精简的alert封装!
Objective-C
67
star
6

BAPrivacyManager

iOS 所有隐私权限封装,定位、蓝牙、通知、运动、日历、相册、相机等!
Objective-C
31
star
7

BAReminderDemo

添加系统提醒,和添加系统日历提醒!很贴心的博爱系列的demo,记得加星哦!
Objective-C
16
star
8

BASegmentControl

一个自定义分段控制器
Objective-C
12
star
9

BAAnimation

OC 动画合集:1、UIView 基本动画封装,2、transtion 动画封装,3、CALayer 动画封装
Objective-C
10
star
10

BAKit

iOS 开发的高效封装,覆盖全面,命名规范!
Objective-C
9
star
11

BAContact

通讯录,最简单的中英文混合排序封装,微信通讯录 demo!
Objective-C
8
star
12

BALocalNotification

本地通知的完美封装!一行代码搞定本地通知!
Objective-C
7
star
13

BAPythonDemo

跟着博爱学 Python,每周都更新新 demo,让你快速入门!
Python
5
star
14

BAQMUIDemo

QMUI 使用demo
Objective-C
4
star
15

BAHtmlTest

html从零开始,跟着博爱开始学习HTML5!
HTML
3
star
16

BACodeSnippet

Xcode CodeSnippet 汇总
3
star
17

BATextAlertView

可以全面自定义弹出视图view: view上的所有控件都可以自定义添加,可以回调,
Objective-C
3
star
18

BAFlutterDemo

Flutter demo
Dart
3
star
19

BASwiftTest

跟着博爱学swift,每周都更新新demo,让你快速入门!
Swift
3
star
20

BAAlertController-Swift

BAAlertController-Swift
Swift
3
star
21

BACommentDemo

采用tableview多层嵌套,实现最热,最新评论的展现,列表的展开与收起
Objective-C
2
star
22

BAMacDemo

跟着博爱学Mac 开发
Objective-C
2
star
23

BAKeyboardDemo

IOS开发中遇到的第三方键盘的处理!
Objective-C
1
star
24

BAShareManager

自定义友盟分享和登陆
Objective-C
1
star
25

ScanDemo

三种扫描二维码样式!
Objective-C
1
star
26

boai.github.io

HTML
1
star
27

BAVideoPlayer

Objective-C
1
star
28

BAJSDemo

js 学习demo
1
star