1
scrollPane.setSize(400,400);
scrollPane.source=emptyc;

其中 emptyc 是一个容器,我在其中动态添加内容(即通过 addChild 方法)不起作用。它根本不滚动。

如果我使用 scrollPane 作为容器本身添加内容(即:

scrollPane.addChild(myChild);
4

1 回答 1

4

问题是 ScollPane 实例不知道您已经更新了它的内容(在 emptyc/etc 中添加了一个子项),因此您需要告诉它update()

这是一个基本示例:

var b:BitmapData = new BitmapData(2,2,false,0xFFFFFF);
b.setPixel(0,0,0);b.setPixel(1,1,0);
var s:Shape = new Shape();

var sp:ScrollPane = new ScrollPane();
sp.scrollDrag = true;
sp.source = s;
addChild(sp);


s.graphics.beginBitmapFill(b);
s.graphics.drawRect(0,0,1000,1000);
s.graphics.endFill();
sp.update();

请注意,如果您注释掉,您会得到与您提到的相同的行为sp.update();。此外,文档中有一个示例。

于 2012-02-16T23:00:47.773 回答