Merge pull request #1806 from maicki/MSAddASButtonNodePreferredFrameSize

[ASButtonNode] Add support for 'preferredFrameSize' to ASButtonNode
This commit is contained in:
Adlai Holler 2016-07-01 13:50:33 -07:00 committed by GitHub
commit d8efa54f21

View File

@ -15,6 +15,7 @@
#import "ASBackgroundLayoutSpec.h" #import "ASBackgroundLayoutSpec.h"
#import "ASInsetLayoutSpec.h" #import "ASInsetLayoutSpec.h"
#import "ASDisplayNode+Beta.h" #import "ASDisplayNode+Beta.h"
#import "ASStaticLayoutSpec.h"
@interface ASButtonNode () @interface ASButtonNode ()
{ {
@ -491,9 +492,13 @@
spec = [ASInsetLayoutSpec insetLayoutSpecWithInsets:contentEdgeInsets child:spec]; spec = [ASInsetLayoutSpec insetLayoutSpecWithInsets:contentEdgeInsets child:spec];
} }
if (CGSizeEqualToSize(self.preferredFrameSize, CGSizeZero) == NO) {
stack.sizeRange = ASRelativeSizeRangeMakeWithExactCGSize(self.preferredFrameSize);
spec = [ASStaticLayoutSpec staticLayoutSpecWithChildren:@[stack]];
}
if (_backgroundImageNode.image) { if (_backgroundImageNode.image) {
spec = [ASBackgroundLayoutSpec backgroundLayoutSpecWithChild:spec spec = [ASBackgroundLayoutSpec backgroundLayoutSpecWithChild:spec background:_backgroundImageNode];
background:_backgroundImageNode];
} }
return spec; return spec;