如何定義可在整個活動中使用的變量?我有三個onClick Listene,每個都包含一堆if else語句。一個onClick會導致一組事件發生,另一個onClick使用out.write指令保存計算結果。如果我的代碼的save onClick部分知道了onClick例程的其他計算,那麼我有問題從內部獲取雙變量。我一直在看書,尋找答案,但似乎沒有任何工作。我正在使用一個斷點來停止一個out.write,它包含一個來自我的執行onClick例程的變量,但它們是未知的值。我首先想到的變量需要是全球性的,但我只是需要他們通過整個活動。在整個班級中使用變量
我已經閱讀了大量的書籍,並試圖理解,但我跳進了Java並寫了3000多行。一切工作都可以得到輸入,決定輸入是什麼,並顯示結果。我甚至在SD卡上創建一個很好的.xml文件來顯示所有的數據結果。問題是,當我嘗試在out.write代碼中放置一個變量時,變量m1_sqs1_eng在onCreate例程中是未知的。我有我的變量像你的例子定義,但它沒有奏效。我的問題的一些代碼示例:
public class MyActivity extends Activity {
private EditText m1_sqs1;
private Spinner m1_sqs1_spinner;
private double m1_sqs1_eng;
private double m1_sqs1_value;
protected onCreate(Bundle savedBundle) {
m1_sqs1_spinner = (Spinner) findViewById(R.id.m1_sqs1_spinner);
m1_sqs1 = (EditText) findViewById(R.id.m1_sqs1);
btnExecute.setOnClickListener(new View.OnClickListener() {
if (((m1_sqs1_spinner.getSelectedItem().toString().equals("in")))) {
double m1_sqs1_eng = new Double(m1_sqs1.getText().toString());
});
btnSave.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
m1_sqs1_value = m1_sqs1_eng;
out.write (" <Cell ss:StyleID=\"s44\"><Data ss:Type=\"Number\">" + m1_sqs1_value + "</Data><NamedCell ss:Name=\"Print_Area\"/></Cell>\r\n");
});
}
}
郵政編碼。你在談論實例變量嗎? – Strelok
發佈的代碼沒有清楚地顯示錯誤。該文本引用out.write()調用不能「看到」實例變量,但沒有在發佈的代碼中有out.write()的實際語句。你收到的錯誤是什麼?它在運行時還是編譯時?有拋出異常嗎?什麼是堆棧跟蹤?我懷疑隱藏實例變量的本地定義變量是你問題的一部分。 – chubbsondubs
我沒有得到任何錯誤,我只是沒有得到out.write中的變量值。我使用斷點停止,當我將光標懸停在變量上時,它顯示定義但不顯示值。 – WmBurkert