我有一个ASStackLayoutSpec作为许多其他节点的容器。其中一个子节点是ASTextNode,其maximumNumberOfLines设置为4.如果用户单击" Read More"下面的按钮,我希望能够删除最大行并调整ASTextNode的大小,以便显示所有内容。
有人能指出我正确的方向吗?
谢谢!
答案 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()
}
,您可以在没有它的情况下尝试并查看它的位置。