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

java– 最佳实践:2D HUD屏幕导航的设计模式,第1张

概述如果您的应用程序具有完全处理2D绘图的GUI,那么处理绘制内容和触摸内容的最佳做法应该是什么?更好理解的一个例子:我有一张地图游戏.在这张地图上,我可以建造房屋和东西.我还有一个可以扩展的信息栏.在扩展栏上,我绘制了一些有关游戏的信息,它还提供了更改不同值的界面.如果发生触

如果您的应用程序具有完全处理2D绘图的GUI,那么处理绘制内容和触摸内容的最佳做法应该是什么?

更好理解的一个例子:
我有一张地图游戏.在这张地图上,我可以建造房屋和东西.
我还有一个可以扩展的信息栏.在扩展栏上,我绘制了一些有关游戏的信息,它还提供了更改不同值的界面.如果发生触摸,我必须检查信息栏是否已扩展,以确定我是否要更改地图上的内容或栏上的内容.

这是由州模式完成的,但我有一些疑问,如果这是正确的,因为我认为它可能有点复杂,因为可能的“子状态”.

基本上问题是:State Pattern(来自GoF)是处理纯图形GUI的最佳实践吗?

@R_502_6120@:

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

总结

以上是内存溢出为你收集整理的java – 最佳实践:2D HUD屏幕导航的设计模式全部内容,希望文章能够帮你解决java – 最佳实践:2D HUD屏幕导航的设计模式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1117551.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存