GithubHelp home page GithubHelp logo

carlsq / flexboxlayout Goto Github PK

View Code? Open in Web Editor NEW
532.0 532.0 55.0 60.64 MB

iOS Flexbox Layout.

Home Page: http://cocoapods.org/pods/FlexBoxLayout

License: MIT License

Ruby 0.39% Objective-C 35.74% C 63.87%

flexboxlayout's People

Contributors

boycehe avatar carlsq avatar eyrefree avatar faimin avatar foxsofter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

flexboxlayout's Issues

报子线程刷新UI的错了

FBLayout.m:
const CGSize sizeThatFits = [view sizeThatFits:(CGSize) {
.width = constrainedWidth,
.height = constrainedHeight,
}];

错误:-[UILabel sizeThatFits:] must be used from main thread only

tableView cell 具有展开收缩功能该如何用FlexBoxLayout添加约束

我是初始化时把所有子视图add到cell上了 然后用bool值来判断是否需要展开,
代码如下:
ps:这样写会崩
if (boll) {
// [_chartBgView fb_makeLayout:^(FBLayout *layout) {
// layout.margin.equalToEdgeInsets(UIEdgeInsetsMake(10, 0, 0, 0)).wrapContent();
// }];
// [_address fb_makeLayout:^(FBLayout *layout) {
// layout.margin.equalToEdgeInsets(UIEdgeInsetsMake(10, 0, 10, 0)).wrapContent();
// }];
[self fb_makeLayout:^(FBLayout *layout) {
layout.flexDirection.equalTo(@(FBFlexDirectionColumn)).margin.equalToEdgeInsets(UIEdgeInsetsMake(0, 12, 4, 12)).alignItems.equalTo(@(FBAlignFlexStart)).children(@[_titleLabel,div2]);
}];
}else{
[_chartBgView fb_makeLayout:^(FBLayout *layout) {
layout.margin.equalToEdgeInsets(UIEdgeInsetsMake(10, 0, 0, 0)).wrapContent();
}];
[_address fb_makeLayout:^(FBLayout *layout) {
layout.margin.equalToEdgeInsets(UIEdgeInsetsMake(10, 0, 10, 0)).wrapContent();
}];
[self fb_makeLayout:^(FBLayout *layout) {
layout.flexDirection.equalTo(@(FBFlexDirectionColumn)).margin.equalToEdgeInsets(UIEdgeInsetsMake(0, 12, 4, 12)).alignItems.equalTo(@(FBAlignFlexStart)).children(@[_titleLabel,div2,_chartBgView,_address]);
}];
}

请问应该何时调用wrapContent?

看sample不太清楚应该何时调用wrapContent这个方法?

对比了一下YogaKit,它是rootView调用applyLayout时调用YGNodeSetMeasureFunc的,相对统一明确。

另外,它重写了intrinsicSize方法,是否也可以参考加入一下?

css direction

typedef enum CSSFlexDirection {
CSSFlexDirectionColumn,
CSSFlexDirectionColumnReverse,
CSSFlexDirectionRow,
CSSFlexDirectionRowReverse,
CSSFlexDirectionCount,
} CSSFlexDirection;

关于复用导致的崩溃问题

你好,我在使用FlexBoxLayout时发现了一个问题:
如果有两个以上的类都使用了FlexBoxLayout,
由于在fb_setCellContnetViewBlockForIndexPath这个方法中,设置了dispatch_once,导致只有第一个使用的类会调用
[self registerClass:[UITableViewCell class] forCellReuseIdentifier:kCellIdentifier];

这样会导致后面使用FlexBoxLayout的类产生崩溃
之后的类需要手动加入类似这样的代码可以避免崩溃:
[_myTableView registerClass:QMNoteFeedCardCell.class forCellReuseIdentifier:@"fb_kCellIdentifier"];

希望作者可以对这个问题优化一下,或者在使用说明中提示一下,谢谢

FlexBoxLayout 动画问题 动画效果不对

  1. 使用 UIView 相关 API 的 block 内部使用 FlexBoxLayout 布局,做出来的动画效果不甚理想,动画会回到原点然后再到相应的位置。
  2. 父 View 使用约束布局,父 View 内部使用 FlexBox 布局,改变父 View 的约束时,父 View 内部的 FlexBox 布局错乱

可能是我使用的问题,望不甚解答,谢谢0.0

不是问题 是提个

这个布局 如果是像cell的imageView 加载比较慢的URL 会自动刷新dom树吗

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.