【问题标题】:Make a custom component or extend the List component for a 2D top down view MAP in flex 4?为 flex 4 中的 2D 自上而下视图 MAP 制作自定义组件或扩展 List 组件?
【发布时间】:2011-05-08 13:39:47
【问题描述】:

喂!

我正在构建一个俯视二维地图,它的对象存储在服务器上。

对象种类有 10 个,可能是照片、标签、按钮、列表、它们的组合或带有工具提示的标签。

组件必须请求屏幕上缺少的“区域”。 一个区域为 1000x1000 px,并缓存在 flex 中。

在地图中移动,就像在谷歌地图中一样(拖放)

我应该能够拥有另一个列表并使用拖放对象将对象从一个移动到另一个。例如:我从列表中抓取一个对象,然后在此地图上移动它,然后松开鼠标按钮,该项目被放置在那里。

现在的问题是:我为此构建了一个自定义组件,试图模拟项目渲染器的性能和回收,实现对象的拖放和请求缺少的区域?

从 spark 扩展 List 组件,并添加了一些功能作为多种 itemrenderer 并在它们上使用回收。当然,它必须能够请求屏幕上的缺失区域并缓存它的数据。 也许也需要创建一个自定义布局

我需要的是必须真正流动的东西,所以这个组件越轻越好!

感谢您的帮助! (:

更新: *不会有任何物体凌驾于另一个之上。 *我不会在位图上使用 hitTest,因为所有位图都包装在另一个组件中,因为它们现在是 itemrenderer。

无论如何,我已经开始使用扩展 SkinnableDataContainer 的类和自定义布局来执行此操作。由于布局不像网格,在不同的点(x,y)是稀疏的、随机的项目。

现在我有这个问题:https://stackoverflow.com/questions/4192934/how-to-get-the-localx-and-localy-relative-to-item-renderer-and-not-to-the-spark

【问题讨论】:

    标签: apache-flex map


    【解决方案1】:

    也许你可以结合使用以下一些:

    1. 画布背景(用于分层组件),如果使用 hitTest,看起来很流畅。使用 constraintColumn/constraintRow 分割画布以进行网格布局。
    2. 使用 hitTest(在项目位图数据上)进行碰撞检测,并将项目移动到新位置(如果项目被放在另一个位置上)。
    3. 使用 mouseDown、mouseMove、mouseUP 的组合(例如 here)进行拖放。
    4. 使用 2D/3D 索引数组来跟踪项目的位置(例如 here

    【讨论】:

    • 首先,感谢您的回答。现在我想我想在我的问题中具体说明一些事情;不会有任何对象凌驾于另一个之上。我不会在位图上使用 hitTest,因为所有位图都包装在另一个组件中,因为它们现在是 itemrenderer。无论如何,我已经开始使用扩展 SkinnableDataContainer 的类和自定义布局来执行此操作。由于布局不像网格,在不同的点(x,y)是稀疏的、随机的项目。现在我有这个问题:stackoverflow.com/questions/4192934/…
    猜你喜欢
    • 1970-01-01
    • 2011-09-12
    • 2011-10-23
    • 1970-01-01
    • 2012-03-20
    • 2010-10-23
    • 2011-11-21
    • 1970-01-01
    • 2010-11-23
    相关资源
    最近更新 更多