如何从自定义surfaceview设置按钮的可见性?

时间:2012-07-17 05:33:15

标签: android button

所以基本上我在Android上做了一个非常简单的游戏。在我的Activity中,我有一个SurfaceView,一些Buttons标有播放重新启动。我相应地设置了Buttons的可见性,这样当游戏处于菜单状态时,它将播放按钮设置为VISIBLE,并且在游戏状态下将其设置为GONE。重启按钮全部设置为GONE,直到玩家输掉游戏。我的问题是,当游戏处于丢失状态时,SurfaceView如何从主Activity访问重新启动按钮将其设置为VISIBLE?这是它应该如何工作,还是有另一种方式?我对Android很新,但我认为这非常重要,因此用户可以真正浏览应用程序,尤其是在游戏中。也许有一些初学者的东西我必须回去?

2 个答案:

答案 0 :(得分:1)

根据您的类结构,设置成员变量以保存对按钮的引用,或者,如果您持有上下文或主布局,请使用Activity.findViewById(ButtonID)或父视图View.findViewByID(ButtonID) )。或者你可以介绍一个新的,例如OnGameState接口,其实现在游戏状态更改时得到通知。然后,其中一个实现将设置按钮的状态。

答案 1 :(得分:0)

以编程方式编写一个新的重启按钮,将其添加到“丢失/游戏结束”活动的布局中。为其onClick()编写适当的代码(类似于当前活动的结束())并启动“新游戏”活动。