所以基本上我有我的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