gpt4 book ai didi

actionscript-3 - FLEX 4 s :Scroller, 如何使包含的组件进入视野?

转载 作者:行者123 更新时间:2023-12-04 07:04:23 24 4
gpt4 key购买 nike

我在 spark Scroller 中有很多子文本输入。如果我有一个 ..z id,如何让 id 为“x”的 TextInput 成为焦点,并且滚动条也可以自动滚动到该子项?

我可以使用 x.setFocus(),但滚动条不会自动滚动到该项目?为什么?

<s:Scroller id="scroller" width="100%" height="100">
<s:Group id="group" width="100%" height="100" id="content">
<s:TextInput id="a" text="" editable="true" width="100%" height="25" />
<s:TextInput id="b" text="" editable="true" width="100%" height="25" />
....
</s:Group>
</s:Scroller>

谢谢,菲利普

最佳答案

原因是 setFocus 只是使对象处于事件状态,它实际上并没有移动更改 ScrollBar 的 scrollPosition。对于像 List 这样更复杂的类,它更直接,但 Scroller 非常基础,所以有点难。

要执行您想要的操作,您必须获取视口(viewport)(您的组)内元素的索引,然后手动设置滚动位置。对于垂直布局,代码如下所示:

var index:Number = group.getElementIndex(g);
var offset:Number = group.getElementAt(index).height;
scroller.viewport.verticalScrollPosition = index * offset;

其中 'g' 是您要在 Scroller 中移动到的元素的 id。

=Ryan ryan@adobe.com

关于actionscript-3 - FLEX 4 s :Scroller, 如何使包含的组件进入视野?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1346993/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com