ASyncDisplayKit(Texture) - 调整可见节点的大小

时间:2017-12-31 05:26:35

标签: ios swift textures asyncdisplaykit

我有一个ASStackLayoutSpec作为许多其他节点的容器。其中一个子节点是ASTextNode,其maximumNumberOfLines设置为4.如果用户单击" Read More"下面的按钮,我希望能够删除最大行并调整ASTextNode的大小,以便显示所有内容。

有人能指出我正确的方向吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以尝试将行数更改为0,然后在节点上调用// flatten List<List<String>> to ArrayList<String> ArrayList<String> phonesAccumulator = new ArrayList<>(); for (List<String> temp : phones) { phonesAccumulator.addAll(temp); } // flatten List<List<Restaurant.Menu>> to ArrayList<String> ArrayList<String> menusAccumulator = new ArrayList<>(); for (List<Restaurant.Menu> temp : menus) { for(Restaurant.Menu m : temp){ menusAccumulator.add(m.toString()); // or m.getName(); } } setNeedsLayout()

看起来像这样:

layoutIfNeeded()

甚至可能不需要func buttonPressed(sender: UIButton) { textNode.numberOfLines = 0 textNode.setNeedsLayout() textNode.layoutIfNeeded() } ,您可以在没有它的情况下尝试并查看它的位置。