iOS 仿写有妖气

闲来无事,App Store 里随便抓了一个爱派派进行一些仿写。

首先声明:如有冒犯或侵权行为,请随时联系告知,我会立刻删除相关文件或资源。

本次仿写是通过 charles 进行接口抓包, 然后代码是 MVC 格式进行书写;为了练习一下布局方式, 该项目采用了三种第三方库进行布局,,分别是MasonrySDAutoLayoutYogaKit

各自的特点

  • Masonry:适用于大部分情况下的布局,易操作。缺点是代码量稍微多。
  • SDAutoLayout:在自适应 cell 行高的情况下,具有优势。
  • YogaKit:前端的flexbox布局方式,在普通视图中,如果不想事先设置视图的高度或宽度,可以考虑用该布局方式,代码清晰明了,易于理解。缺点是代码繁琐。

示例代码:
Masonry:

[self.img_bg mas_makeConstraints:^(MASConstraintMaker *make) {
        make.edges.mas_equalTo(self.contentView);
 }];

SDAutoLayout:

self.img_cover.sd_layout
    .leftEqualToView(self.contentView)
    .topEqualToView(self.contentView)
    .rightEqualToView(self.contentView)
    .autoHeightRatio(296.0/504.0);

YogaKit:


    UIView *v_header2 = [UIView new];
    [v_header addSubview:v_header2];
    [v_header2 configureLayoutWithBlock:^(YGLayout * _Nonnull layout) {
        layout.isEnabled = YES;
        layout.alignItems = YGAlignCenter;
        layout.flexDirection = YGFlexDirectionRow;
        layout.marginHorizontal = YGPointValue(12);
        layout.position = YGPositionTypeAbsolute;
    }];

该项目实现的功能点

  1. 选项卡的应用。
  2. tableView 多种cell 的应用。
  3. 广告页的应用。
  4. 皮肤切换的应用。
  5. 对网络请求的封装。
  6. 对普通 tableView 页面的封装。
  7. 对一些第三方库的应用。

效果图如下

在这里插入图片描述

项目地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值