我对这个问题感到疯狂。基本上,我有一个TileList,其中包含一个TextInput的自定义项呈示器。假设列表一次可以显示4个项目,如果有5个项目,我在第一个项目上编辑文本,第五个项目也将被编辑。一般情况下,如果某个项目不在视野范围内,则在我编辑正在显示的项目时会发生变化。
另外,我重写了TileList类以公开rendererArray属性(这样我可以访问每个渲染器上的文本),但它只会返回显示的渲染器。
感谢任何帮助。我需要知道如何使用当前未显示的itemrenderers覆盖这种奇怪的行为。感谢。
答案 0 :(得分:1)
好的,如果有人遇到类似的问题,这就是你需要做的事情:
首先,避免尝试像我一样迭代itemrenderers。如果您需要在TileList上使用TextInput或其他控件,请确保这些控件绑定到数据对象上的属性,否则屏幕外项目将具有不正确的值,因为它们的itemrenderer将从离开屏幕的项目中回收你滚动了。
如果您认真考虑,可以通过遍历数据提供者而不是逐项提交者来解决任何要求。
此外,如果您尝试像我一样公开rendererArray属性,请注意您只能遍历当前显示的itemrenderer,因为那些属于屏幕外项目的那些将不会创造了。
我希望这不会太混乱..