簡體   English   中英

我的問題是,當按下按鈕時,為什么我輸入的編輯文本中的文本不會顯示在另一個文本視圖中?

[英]My question is why won't my inputted text into an edittext show up in another textview when a button is pressed?

因此,我已將來自 editTexts 的輸入轉換為整數,以便我可以在 if else 語句中的方程中使用它們,然后將數學結果轉換為字符串,以便我可以打印結果。 我正在嘗試制作一個應用程序來幫助物理學。 我是初學者。 如果您需要更多信息,例如 xml 文件或清單文件,請告訴我。

速度.java

    EditText editText1=findViewById(R.id.editText1);
            EditText editText2=findViewById(R.id.editText2);
            EditText editText3=findViewById(R.id.editText3);
            Button solve=findViewById(R.id.solve);
            final String veloInput=editText1.getText().toString();
            final String disInput = editText2.getText().toString();
            final String timInput = editText3.getText().toString();
            final TextView textView=findViewById(R.id.textView5);
            solve.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v){
                    if (veloInput.equals("v")) {
                        int distInput = Integer.parseInt(disInput);
                        int timeInput = Integer.parseInt(timInput);
                        int value = distInput / timeInput;
                        String strValue = Integer.toString(value);
                        textView.setText(strValue);
                    }

我希望它將字符串 strValue 輸入到 textView 中,但是當我按下“解決”按鈕時沒有任何反應。

當您調用editText1.getText().toString()您將在那時從 editText1 獲取字符串。 如果用戶更改了文本框的值,則您的任何變量都不會反映該更改。 嘗試在 onClick 函數中移動 getText 調用:

EditText editText1=findViewById(R.id.editText1);
EditText editText2=findViewById(R.id.editText2);
EditText editText3=findViewById(R.id.editText3);
Button solve=findViewById(R.id.solve);
final TextView textView=findViewById(R.id.textView5);
solve.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v){
        final String veloInput = editText1.getText().toString();
        final String disInput = editText2.getText().toString();
        final String timInput = editText3.getText().toString();
        if (veloInput.equals("v")) {
            int distInput = Integer.parseInt(disInput);
            int timeInput = Integer.parseInt(timInput);
            int value = distInput / timeInput;
            String strValue = Integer.toString(value);
            textView.setText(strValue);
        }
    }
});

暫無
暫無

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

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