GithubHelp home page GithubHelp logo

rmkitty / momentkit Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xmaxzone/momentkit

0.0 1.0 0.0 75.33 MB

MVC模式实现WeChat朋友圈功能,代码整洁易读。支持富文本(链接/表情/电话/邮箱等)、点赞、评论/回复评论、图片预览、文字拷贝等功能。

Objective-C 99.93% Ruby 0.07%

momentkit's Introduction

MomentKit

MVC模式实现WeChat朋友圈功能,代码整洁易读。里面的功能还没有全部完善,可根据自己的需求去补充一下。欢迎留言,互相学习。

使用说明

由于未上传Pods,请先安装Pods

  1. 打开Terminalcd到文件夹下;
  2. 执行pod install

功能介绍

1、一级页面

  1. 消息页面(模型:Message);
  2. 通讯录页面(包含索引,模型:MUser);
  3. 发现页面;
  4. 我的页面;

PS:这些页面只是为了不让一级页面显得空,本控件主要是朋友圈功能的分享。

2、二级页面 > 朋友圈页面(MVC模式)

  1. 控制器(Controller):朋友圈列表MomentViewController
  2. 模型(Model):MomentCommentMPicture
  3. 视图(View):
  • 单个朋友圈动态视图(MomentCell);
  • 朋友圈图片区视图(MMImageListView);
  • 图片预览视图(MMImagePreviewView);
  • 赞|评论操作视图(MMOperateMenuView)等;

3、朋友圈的功能点

  1. 支持富文本(MLLinkLabel):链接、表情、电话、邮箱等;
  2. 支持链接查看,顶部带进度条(MMWebView)、电话拨打|拷贝、邮箱调取;
  3. 支持位置查看(高德地图);
  4. 支持网络图片加载(SDWebImage);
  5. 支持图片预览:双击放大、双指捏合缩放、滚动预览等;
  6. 支持数据库增删改查(FMDB+JKDBModel);
  7. 支持上拉加载更多(MJRefresh);
  8. 支持点赞、取消点赞(包含动效);
  9. 支持评论、回复评论以及删除评论(包含评论时滚动定位);
  10. 支持文字长按拷贝(UIMenuController);
  11. 支持点击用户跳转详情;
  12. 新增FPS悬浮可拖动label显示;
  13. 新增Runloop做流式页面流畅度优化(图片加载);
  14. 其他功能 > 未完待续;

效果图

MomentKit MomentKit MomentKit MomentKit

后记

本控件大约是GitHub上最简单易读的,我没有其他大佬的技术牛,所用到的技术有限(详见上文功能点介绍),做这个主要是自我学习。会不定时更新,如果有问题和建议欢迎给我留言,我会及时回复。如果这个工具对你有一些帮助,请给我一个star,谢谢🌹🌹。

momentkit's People

Contributors

chaneylau avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.