簡體   English   中英

當我嘗試運行它時,我的應用程序不斷崩潰(新的)

[英]My app keeps crashing when i try to run it (New to this)

public class MainScreen extends AppCompatActivity {
private double mmiles,mgallons = 1;
EditText miles;
EditText gallons;
Button execute;
TextView fin;


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







    execute.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view){
            miles = (EditText) findViewById(R.id.editTextMiles);
            gallons = (EditText) findViewById(R.id.editTextGallons);
            mmiles = Double.parseDouble(miles.getText().toString());
            execute= (Button) findViewById(R.id.execute);
            fin= (TextView) findViewById(R.id.fini);
            String numberAsString = new Double(mmiles).toString();
            fin.setText(numberAsString);
        }
    });
}}

每次我啟動應用程序時它都會崩潰。 我試圖將一個數字從 EditText 存儲到一個 TextView 開始。 我是 Java 編程的新手,所以我很難弄清楚這一點。

編輯:似乎仍然沒有顯示任何內容。 這是我到目前為止所擁有的:

      execute.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view){
            miles = (EditText) findViewById(R.id.editTextMiles);
            gallons = (EditText) findViewById(R.id.editTextGallons);
            mmiles = Double.parseDouble(miles.getText().toString());
            String TextAsString = String.valueOf(mmiles);
            fin= (TextView) findViewById(R.id.fini);

            fin.setText(TextAsString);
        }
    });

為按鈕使用不同的名稱,我不認為“execute”是保留關鍵字,但稍后(使用 AsyncTask)它可能意味着其他事情,因此一開始會令人困惑

您在execute.setOnClickListener...行之前需要此行:

execute = (Button) findViewById(R.id.execute);

原因是,在那之前,您只告訴編譯器執行一個按鈕,但它不知道您指的是哪個按鈕。

另外,更改String numberAsString = new Double(mmiles).toString(); String numberAsString = String.valueOf(mmiles);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM