我正在使用從main擴展到設置某些按鈕的子類。我可以更改在main中創建的變量,例如子項內的TotalMoney。FindViewById在子類中使用時爲空
問題是findViewById給出了一個空指針異常。 buildthem()中的代碼在主類中使用時可以正常工作。
我正在使用setContentView(R.layout.main);從OnCreate中主要。 Child類實例化並從主類中的OnResume調用。
我是否需要在子節點中設置內容視圖,或者以某種方式傳遞主類中的內容視圖?
package com.chewyapps.markettrader;
class child extends main {
void buildthem(){
TotalMoney = TotalMoney + 9999;
Button MenuButton = (Button) findViewById(R.id.Menu);
//etc
}
}
我可以在OnCreate中沒有findViewById因爲完整的代碼將使用
for(i=0; i<buttonIDs.length; i++) {
Button b = (Button) findViewById(buttonIDs[i]);
//do other stuff
}
的對是需要與每個按鈕其他的事情循環。如果我能夠得到基本示例,但我認爲完整的代碼將起作用。
它沒有發生在我說這之前,但在子類是所謂的child.java一個單獨的文件,從我main.java文件中的onResume我用:
child childObject = new child();
childObject.buildthem();
關於命名約定好一點。 – trgraglia 2011-03-17 15:53:07
請參閱編輯爲什麼我不能把它放在創造 – 2011-03-17 16:17:19
@湯姆漢弗里斯更新了我的答案 – 2011-03-17 17:36:29