0
ASCollectionNode
でセルを全角にしたいが、内容によってサイズがCellNodes
になる。 layoutSpecThatFits:
を実装しました。CellolodeのASCollectionNode全幅レイアウト
ASCollectionNode
でセルを全角にしたいが、内容によってサイズがCellNodes
になる。 layoutSpecThatFits:
を実装しました。CellolodeのASCollectionNode全幅レイアウト
それを達成するための私の方法はASStaticLayoutSpec内部の全幅で、余分なノードを追加しています。ヘッダで
:
@property (strong, nonatomic) ASDisplayNode *stretchNode;
_stretchNode = [ASDisplayNode new]; [self addSubnode:_stretchNode];
layoutSpecThatFits:
- (ASLayoutSpec *)layoutSpecThatFits:(ASSizeRange)constrainedSize {
_stretchNode.sizeRange = ASRelativeSizeRangeMakeWithExactCGSize(CGSizeMake(constrainedSize.max.width, 0.5f));
NSArray *children = @[];
ASStackLayoutSpec *mainStackLayoutSpec = [ASStackLayoutSpec stackLayoutSpecWithDirection:ASStackLayoutDirectionVertical spacing:0 justifyContent:ASStackLayoutJustifyContentStart alignItems:ASStackLayoutAlignItemsStart children:children];
ASStaticLayoutSpec *mainStaticLayoutSpec = [ASStaticLayoutSpec staticLayoutSpecWithChildren:@[mainInsetsLayoutSpec, _stretchNode]];
return mainStaticLayoutSpec;
}
ここで重要な部分はASStaticLayoutSpecであなたのレイアウトとstretchNodeをラップすることです。 StackLayoutは必要なものに置き換えることができます。