MyLinearLayout Versions Save

MyLayout is a powerful iOS UI framework implemented by Objective-C. It integrates the functions with Android Layout,iOS AutoLayout,SizeClass, HTML CSS float and flexbox and bootstrap. So you can use LinearLayout,RelativeLayout,FrameLayout,TableLayout,FlowLayout,FloatLayout,PathLayout,GridLayout,LayoutSizeClass to build your App 自动布局 UIView UITableView UICollectionView RTL

1.3.4

7 years ago

See the CHANGELOG.md file.

1.3.3

7 years ago

See the CHANGELOG.md file.

1.3.2

7 years ago

See the CHANGELOG.md file.

1.3.1

7 years ago

See the CHANGELOG.md file.

1.3.0

7 years ago

See the CHANGELOG.md file.

1.2.9

7 years ago

See the CHANGELOG.md file.

1.2.8

7 years ago

See the CHANGELOG.md file.

1.2.7

7 years ago
  1. 为线性布局MyLinearLayout新增加了属性shrinkType。这个属性可以用来控制当子视图中有比重尺寸或者相对间距,而又有固定尺寸比布局视图的尺寸还大时,如果缩小这些固定尺寸视图的尺寸值的方法。(具体例子见AllTest7ViewController)
  2. 为布局视图添加了rotationToDeviceOrientationBlock属性。这个block给予用户在布局视图第一次完成或者有屏幕旋转时进行界面布局处理的机会。我们可以通过这个block块来处理设备屏幕旋转而需要改动布局的场景。这个block块不像beginLayoutBlock以及endLayoutBlock那样只调用一次,而是第一次布局完成以及每次屏幕旋转并布局完成后都会调用,因此要注意循环引用的问题。(具体见例子见:LLTest6ViewController)
  3. 线性布局MyLinearLayout中去掉了当子视图中有设置比重,或者子视图中设置相对间距时而又设置了布局视图的wrapContentWidth或者wrapContentHeight属性时,wrapContentWidth或者wrapContentHeight设置失效的限制。具体例子请看(AllTest7ViewController)
  4. 线性布局MyLinearLayout中的水平线性布局中修复了一个当子视图中有比重尺寸或者相对间距,而又有固定尺寸比布局视图的尺寸还大时,缩小那些具有固定尺寸的子视图的宽度的一个BUG。见(AllTest3ViewController)中的左右文字拉升的情况。
  5. 添加了MyLayoutDime中的uBound和lBound方法中最大最小值设置时可以等于自己的情况,这样目的是为了保证视图本身的尺寸不被压缩。具体见(AllTest7ViewController)
  6. 添加了在调试时使用po 视图对象.absPos.sizeClass 或者expr -o -- 视图.absPos.sizeClass 方法时可以输出布局设置的各种布局属性值。
  7. 添加了将布局视图作为非布局视图的子视图的四周边距值可以是相对边距的支持,也就是当布局视图作为非布局视图的子视图时设置的topPos,rightPos,topPos,bottomPos的值是大于0且小于1时表明的是相对边距。
  8. 修复了视图尺寸MyLayoutDime的uBound,lBound方法的最大最小尺寸设置为父布局视图时,而布局视图又有padding时,没有减去padding值的BUG。
  9. 添加了AllTest7ViewController这个新的DEMO,用来解决一些实践中各种屏幕尺寸下布局的完美处理方案。

1.2.4

7 years ago

1.浮动布局MyFloatLayout增加了新属性noBoundaryLimit,用来实现那些只要单向浮动且没有边界限制的场景。具体例子见FOLTest6ViewController。 2.优化了布局方法estimateLayoutRect,优化了那些布局套布局的尺寸的评估的计算方法,加快了对动态高度评估计算的速度。 3.添加了2个DEMO,一个是RLTest4ViewController用来介绍布局在滚动条上滚动式停靠的实现。一个是FOLTest6ViewController用来介绍用浮动布局实现一些用户配置方面的DEMO。

1.2.3

7 years ago

1.添加了新的布局:路径布局MyPathLayout。通过路径布局您只需要提供一个生成路径曲线的方程、以及指定子视图在路径曲线之中的距离等信息就可以让子视图按照指定的路径曲线进行布局,因此路径布局可以实现一些非常酷炫的效果。具体例子见:PLTest1,2,3,4ViewController 2.添加了子视图的新方法:@property(nonatomic,copy) void (^viewLayoutCompleteBlock)(MyBaseLayout* layout, UIView *v); 这个方法是在每个子视图布局完成后会调用一次,然后自动销毁。您可以实现这个block来进行一些子视图布局完成后的设置,一般实现这个块用来完成一些特定的动画效果,以及取值操作。具体例子见RLTest1ViewController,PLTest1ViewController 3.添加了对布局视图里面的子视图通过transform进行坐标变换的支持功能,在您对子视图进行坐标变换操作时,您可以可以通过设置扩展属性来确定子视图的尺寸和位置。具体能力见PLTest系列DEMO。 4.完善了智能边界线的能力,如果您在布局视图中设置了subviewMargin属性的话,布局系统将会自动的将智能边界线一分为2.具体例子见TLTest3ViewController 5.布局基类的属性:adjustScrollViewContentSize被设置为过期,改为通过adjustScrollViewContentSizeMode属性来设置当布局视图加入到UIScrollView时调整其contentSize的方式。 6.修正了一个线性布局中当布局视图的尺寸没有子视图尺寸大,而子视图又设置了weight属性时可能导致的计算不正确的问题。