2014-01-17 52 views
-5

我是android開發的新手,我遇到了我的第一個誤解。計算兩個整數

所以我想要做的是做一個簡單的計算器,將返回兩個整數的總和。

我的代碼是:

主要活動

public void sendMessage(View view) 
{ 
    Intent intent = new Intent(this, DisplayMessageActivity.class); 
    EditText editText = (EditText)findViewById(R.id.edit_message); 
    EditText editText2 = (EditText)findViewById(R.id.edit_message2); 
    String message = editText.getText().toString(); 
    String message2 = editText2.getText().toString(); 
    intent.putExtra(EXTRA_MESSAGE, message); 
    intent.putExtra(EXTRA_MESSAGE2, message2); 
    startActivity(intent); 
} 

DisplayMessageActivity

Intent intent = getIntent(); 
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE); 
String message2 = intent.getStringExtra(MainActivity.EXTRA_MESSAGE2); 
int result = Integer.parseInt(message) + Integer.parseInt(message2); 
setContentView(R.layout.activity_display_message); 
TextView t = new TextView(this); 
t=(TextView)findViewById(R.id.result); 
t.setText(String.valueOf(result)); 

測試給我這些結果:

2 + 2 = 4

2 + 3 = 6

1 + 8 = 16

任何幫助理解。

+1

顯示,你把多餘的進入意圖 – kai

+7

貌似參數具有相同的代碼點值,向我們展示您創建意圖的代碼。 –

+5

檢查「MainActivity.EXTRA_MESSAGE」和「MainActivity.EXTRA_MESSAGE2」是否具有相同的值。這只是這個錯誤的原因。 –

回答

0

謝謝大家提示!發現問題初始化EXTRA_MESSAGE變量

它是:

public static final String EXTRA_MESSAGE = "com.example.m2test.MESSAGE"; 
public static final String EXTRA_MESSAGE2 = "com.example.m2test.MESSAGE"; 

相反的:

public static final String EXTRA_MESSAGE = "com.example.m2test.MESSAGE"; 
public static final String EXTRA_MESSAGE2 = "com.example.m2test.MESSAGE2";