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

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

更好理解的一个例子:

我有一张地图游戏.在这张地图上,我可以建造房屋和东西.

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

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

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

解决方法:

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

标签:java,android,user-interface,design-patterns

来源: https://codeday.me/bug/20190705/1383789.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值