我正在开发一个UI容器来保存可以拖放到容器上的UI组件,还可以在容器内移动组件。组件具有各种尺寸。我在flex / actionscript中这样做,但我想这个问题适用于任何用户界面。是否有任何具有布局算法的资源(书籍等)。对此的任何指示将是一个很大的帮助。
用户可以拖放项目。但是项目应该重新排列,以便没有重叠。例如。如果有两个项目紧挨着彼此并且用户在它们上面放下第三个项目(在中间),则前两个项目应移到一边以为第三个项目腾出空间。 (与examples.adobe.com/flex3/devnet/dashboard/main.html类似,但项目大小不同)。
仪表板布局的源代码与假设所有组件的尺寸相同。我正在寻找的是一种布局不同尺寸组件的方法。
由于
答案 0 :(得分:0)
我们过去为客户做过这样的工作。您需要的是碰撞检测算法的实现。见http://code.google.com/p/collisiondetectionkit/ 另外这里有一篇关于代码项目的文章,它在C#中有一些布局实用程序来实现它,你可以移植它:http://www.codeproject.com/Articles/23871/WPF-Diagram-Designer-Part-3。还