首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最佳实践: 2D HUD屏幕导航的设计模式

最佳实践: 2D HUD屏幕导航的设计模式
EN

Stack Overflow用户
提问于 2010-08-23 16:33:02
回答 1查看 746关注 0票数 4

如果您的应用程序的GUI完全在2D绘图上工作,那么处理绘制内容和触摸位置的最佳实践应该是什么?

下面是一个更好理解的例子:

我有一个带地图的游戏。在这张地图上,我可以建造房屋之类的东西。

我还有一个可以扩展的信息栏。在扩展条上,我画了一些关于游戏的信息,它还提供了更改不同值的界面。如果发生触摸,我必须检查信息栏是否扩展,以确定我是否要更改地图上的某些内容或栏上的某些内容。

这是由State模式完成的,但我怀疑这是否正确,因为我认为它可能有点复杂,因为可能存在“子状态”。

所以基本上的问题是:状态模式(来自GoF)是处理纯图形用户界面的最佳实践吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-24 05:12:14

通常的工作方式是,UI是Control对象的树。每个控件都有一些边界框,并且可能有一些浮动在其上方的子控件。当单击发生时,树是从上到下遍历的(这意味着孩子在父母之前,兄弟顺序)。对于每个控件,可以查看该点是否与其边界框相交。如果是这样的话,给控件一个处理点击的机会(即一些虚拟的OnClick方法)。如果是,则停止处理,该单击即已完成。否则,继续往前走,直到找到一个可以处理它的控件。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3545871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档