2017-03-14 44 views
-3

我想做一個簡單的計算器。客戶將輸入他/她去過多少公里,計算器會給出總金額。開幕金額是4,每公里的費率是1.4。簡單的計程器

我在做什麼錯?

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     double km; 
     int y; 
     double x; 
     x = 1.4; 
     y = 4; 

     TextView tabela = (TextView) findViewById(R.id.tabela); 
     EditText number = (EditText) findViewById(R.id.number); 
     String written = number.getText().toString(); 
     km = Double.parseDouble(written); 
     tabela.setText("Total Amount" + ((km*x)+y)); 
    } 
} 
+2

而錯誤是? –

+0

它不工作。應用程序不斷關閉。所以我認爲編碼有問題。但我還沒有收到令人滿意的答案。感謝您的詢問。 –

回答

1

number.getText().toString()立即返回一個空字符串。

你需要一個Button和一個點擊監聽器。

public class MainActivity extends AppCompatActivity 
    implements View.OnClickListener { 

    TextView tabela; 
    EditText number; 
    Button b; 

    @Override 
    public void onClick(View v) { 
     if (v.getId() == R.id.button) { 
      String written = number.getText().toString(); 
      km = Double.parseDouble(written); 
      tabela.setText("Total Amount" + ((km*x)+y)); 
     } 
    } 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     tabela = (TextView) findViewById(R.id.tabela); 
     number = (EditText) findViewById(R.id.number); 

     b = ... // find button here 
     b.setOnClickListener(this); // to the activity 
+0

非常感謝。但問題不是按鈕,我可以通過XML部分來管理它。問題是代碼無法正常工作。應用程序保持關閉那是你的問我是否在編碼方面有問題。 –

+0

是的,你的代碼有問題。 edittext是空的......導致你的應用在你打開它時立即關閉,你會看到如果你閱讀logcat ** ....你需要**一個按鈕或其他一些輸入一旦活動打開就不會獲得文本。 –