澳门永利m5900cc

澳门永利m5900cc

  • 邬贺铨:“新华睿思”彰显新华网“数字中国”主力军雄心 2019-04-23
  • "情系民歌 让爱传递"义卖活动 传递社会正能量 2019-04-23
  • 航拍贵州万峰林“福”字稻田景观 2019-04-23
  • Le calendrier deux sessions de Xi Jinping 2019-04-23
  • 万喆:金砖合作为世界注入更多正能量 2019-04-23
  • 运动汇魔笛决定留在皇马 国安被赞中前场太强 2019-04-23
  • [面对面]胡大一:紧急救治 2019-04-23
  • 周伟当选甘肃省武威市市长(图简历) 2019-04-23
  • 北京箭扣南段长城修缮工程正式开工 2019-04-23
  • 创新要重视“技术预见” 2019-04-22
  • 七旬“少年”爱跑马,他还在美国创造了纪录 2019-04-22
  • 小猿猴“赖上”救它的警察妈妈  简直被萌化 2019-04-22
  • 书写奋斗新篇章 建功立业新时代 2019-04-22
  • 关于好制度与坏制度的讨论 2019-04-22
  • 红木家具为什么开裂 红木家具开裂怎么办 2019-04-22
  • 登录 立即注册
    金钱:

    澳门永利m5900cc

    如丝般顺滑的微信朋友圈(点赞,评论,图文混排表情,...

    [复制链接]
    来自: Waynezxcv 分类: iOS精品源码 上传时间: 2016-5-26 01:21:37
    Tag:微信 朋友圈 coretext Gallop

    项目介绍:

    文:waynezxcv

    Gallop --- 异步绘制排版引擎,支持布局预加载缓存、支持图文混排显示,支持添加链接、支持自定义排版,自动布局。 只需要少量简单代码,就可以快速构建一个性能相当优秀(滚动时帧数60)的图文混排界面。

    Gallop v0.2.1
    Gallop --- 异步绘制排版引擎,支持布局预加载缓存、支持图文混排显示,支持添加链接、支持自定义排版,自动布局。 只需要少量简单代码,就可以构建一个性能相当优秀(滚动时帧数60)的图文混排界面。

    Features
    • 支持文本布局绘制预加载,并使用异步绘制的方式,保持界面的流畅性
    • 支持富文本,图文混排显示,支持行间距 字间距,设置行数,自适应高度
    • 支持添加属性文本,自定义链接
    • 支持在子线程圆角图片,并避免离屏渲染
    • 支持通过设置约束的方式自动布局
    • API简单,只需设置简单的属性,其余交给Gallop就好啦。


    Requirements
    使用Gallop实现网络图片加载部分依赖于SDWebImage(https://github.com/rs/SDWebImage) 'SDWebImage', '~>3.7'

    Who Use
    适合于想要快速搭建类似微信朋友圈、新浪微博Timeline等复杂的图文混排滚动界面,并对于滚动流畅性性能有一定要求的情况。

    Installation
    将Gallop文件夹下的.h及.m文件添加到你的工程当中。
    #import "Gallop.h"

    Usage
    • API Quickstart



    使用示例
    1.生成一个文本模型
    [Objective-C] 查看源文件 复制代码
     澳门永利m5900cc www.alfanarrealestate.com LWTextStorage* textStorage = [[LWTextStorage alloc] init];
    textStorage.text = @"waynezxcv";
    textStorage.font = [UIFont systemFontOfSize:15.0f];
    textStorage.textColor = RGB(113, 129, 161, 1);
    
    /***  为文本添加点击链接事件  ***/
    [textStorage addLinkWithData:data
                             inRange:NSMakeRange(0,statusModel.name.length)
                           linkColor:RGB(113, 129, 161, 1)
                      highLightColor:RGB(0, 0, 0, 0.15)];
    
    /***  点击链接回调  ***/
    - (void)lwAsyncDisplayView:(LWAsyncDisplayView *)asyncDisplayView didCilickedLinkWithfData:(id)data;
    
    /***  用本地图片替换掉指定位置的文字  ***/
    [textStorage lw_replaceTextWithImage:[UIImage imageNamed:@"img"]
                                contentMode:UIViewContentModeScaleAspectFill
                                    imageSize:CGSizeMake(60, 60)
                            alignment:LWTextAttachAlignmentTop
                range:NSMakeRange(webImageTextStorage.text.length - 7, 0)];
    
    
    /***  用网络图片替换掉指定位置的文字  ***/
    [textStorage lw_replaceTextWithImageURL:[NSURL URLWithString:@"https://avatars0.githubusercontent.com/u/8408918?v=3&s=460"]
                                                contentMode:UIViewContentModeScaleAspectFill
                                                  imageSize:CGSizeMake(60, 60)
                                                  alignment:LWTextAttachAlignmentTop
                                                      range:NSMakeRange(webImageTextStorage.text.length - 7, 0)];
    
    /***  用UIView替换掉指定位置的文字  ***/
    [textStorage lw_replaceTextWithView:[[UISwitch alloc] initWithFrame:CGRectMake(0, 0, 60.0f, 30.0f)]
                                    contentMode:UIViewContentModeScaleAspectFill
                                           size:CGSizeMake(60.0f, 30.0f)
                                      alignment:LWTextAttachAlignmentTop
                                          range:NSMakeRange(1,0)];
    



    2.生成一个图片模型
    [Objective-C] 查看源文件 复制代码
    /***  本地图片  ***/
    LWImageStorage* imamgeStorage = [[LWImageStorage alloc] init];
    imamgeStorage.contents = [UIImage imageNamed:@"pic.jpeg"];
    imamgeStorage.frame = CGRectMake(textStorage.left, textStorage.bottom + 20.0f, 80, 80);
    imamgeStorage.cornerRadius = 40.0f;//设置圆角半径
    
    
    /***  网络图片  ***/
    LWImageStorage* imamgeStorage = [[LWImageStorage alloc] init];
    imamgeStorage.contents = [NSURL URLWithString:@"https://avatars0.githubusercontent.com/u/8408918?v=3&s=460"];
    imamgeStorage.frame = CGRectMake(textStorage.left, textStorage.bottom + 20.0f, 80, 80);
    imamgeStorage.cornerRadius = 40.0f;
    
    /***  点击图片回调  ***/
    - (void)lwAsyncDisplayView:(LWAsyncDisplayView *)asyncDisplayView didCilickedImageStorage:(LWImageStorage *)imageStorage touch:(UITouch *)touch;



    3.设置约束 自动布局
    [Objective-C] 查看源文件 复制代码
    [LWConstraintManager lw_makeConstraint:textStorage.constraint.leftMargin(10).topMargin(20).widthLength(40.0f).heightLength(40.0f)];
    [LWConstraintManager lw_makeConstraint:imamgeStorage.constraint.leftMarginToStorage(textStorage,10).topMargin(20).widthLength(SCREEN_WIDTH)];




    4.生成布局模型
    [Objective-C] 查看源文件 复制代码
    LWLayout* layout = [[LWLayout alloc] init];
    
    /***  将LWstorage实例添加到layout当中  ***/
    [layout addStorage:textStorage];
    [layout addStorage:imamgeStorage];




    5.创建LWAsyncDisplayView,并将LWLayout实例赋值给创建LWAsyncDisplayView对象
    [Objective-C] 查看源文件 复制代码
    LWAsyncDisplayView* asyncDisplayView = [[LWAsyncDisplayView alloc] initWithFrame:CGRectZero maxImageStorageCount:10];
    asyncDisplayView.layout = layout;
    [self.view addSubview:asyncDisplayView];




    • 如果需要更加详细的内容,请看各个头文件和Demo,有详细的注释
    • Demo中有用Gallop构建的微信朋友圈,下载Demo真机调试。



    正在不断完善中...有任何问题请联系我 liuweiself@126.com


    DEMO下载:
    运行demo可以查看效果,而且在demo中,针对各种文本和图文的实现都有详细的用例


    相关源码推荐:

    我来说两句
    *滑动验证:
    所有评论(3162)
    dagouxionglz 2016-5-26 12:01:55
    强烈支持楼主ing……
    回复
    keliangyao 2016-5-26 13:13:53
    我只是路过打酱油的。
    回复
    沙漠胡杨 2016-5-26 13:15:29
    虽不明,但觉厉!
    回复
    ogqs0493 2016-5-26 13:20:00
    很给力,澳门永利m5900cc有你更精彩!
    回复
    末日孤舰 2016-5-26 13:20:58
    虽不明,但觉厉!
    回复
    ah789go 2016-5-26 14:27:52
    感谢分享,澳门永利m5900cc有你更精彩
    回复
    ah789go 2016-5-26 14:28:31
    很给力,澳门永利m5900cc有你更精彩!
    回复
    陈永辉 2016-5-26 14:49:38
    很给力,澳门永利m5900cc有你更精彩!
    回复
    leisemt 2016-5-26 14:58:12
    楼主用心了,内容非常精彩。
    回复
    提取码:  下载次数:2365 状态:已购或VIP 售价:0(原价:10)金钱 下载权限:初级码农 
    38822 13 2365
    联系我们
    首页/微信公众账号投稿

    帖子代码编辑/版权问题

    QQ:435399051,742864542

    如何获得代码达人称号?

    代码贡献英雄榜
    用户名 下载数
    通过邮件订阅最新 澳门永利m5900cc 信息
    上一条 /4 下一条
    联系我们
    关闭
    合作电话:
    13802416937
    Email:
    435399051@qq.com
    商务市场合作/投稿
    问题反馈及帮助
    联系我们

    广告投放| Github|申请友链|手机版|澳门永利m5900cc ( 粤ICP备15117877号-1 )

    快速回复 澳门永利m5900cc 返回列表