所以基本上我有我的MainActivity如何从其他课程更改按钮的可见性?
Button button1 = (Button)findViewById(R.id.button1);
button1.setVisibility(View.GONE);
什么是我的按钮知名度从我GameView类改变方式按钮?
if(state == State.PAUSED){
//change button visibility
}
所以基本上我有我的MainActivity如何从其他课程更改按钮的可见性?
Button button1 = (Button)findViewById(R.id.button1);
button1.setVisibility(View.GONE);
什么是我的按钮知名度从我GameView类改变方式按钮?
if(state == State.PAUSED){
//change button visibility
}
最推荐的方式实现这一目标是有一个本地BroadcastReceiver
(子类的MainActivity
)将从广播读取信息,并根据该设置按钮的可见性。
而且
发送广播形式GameView
用正确的消息。
似乎很复杂,但相信我,它是最好的和推荐的方式来做到这一点。
Link为教程。
您需要制作公共静态字段Button button1;
如果你想调用另一个类按钮即可调用该类和按钮像例如
FirstClass.button1
静态字段不是推荐的方式 –
为什么不推荐它? – GlacialMan
Android编码标准如此说。一旦活动被操作系统杀死,或者视图不再需要并且可以被垃圾收集,它就会为空,所以当你使用这种方法时你会得到NullPointerException。最好在活动上定义一个方法,以便按下按钮并传递活动本身,而不是将视图变量暴露给外部类 –
尽量保持你想切换到视图的引用(按钮),并改变它在您认为合适的任何方式
button1.setVisibility(View.GONE);
or
button1.setVisibility(View.VISIBLE);
声明你按钮Button1的作为静态全局变量在MainActivity像
public Static Button button1;
那么你GameView代码将
if(state == State.PAUSED){
MainActivity.button1.setVisibility(View.GONE)
}
什么是GameView?一个片段? – Lino