在Java中吐司,需要显示textview的值

时间:2014-04-24 20:20:51

标签: java android android-toast

我有一个显示计算结果的resulttextview。我想传递此resulttextview的值,以便它将以toast形式显示。

我有这个代码:     Toast.makeText(MyCalcActivity.this,message, Toast.LENGTH_LONG).show();

但是此代码显示了firstnumberTxt的值,其中我键入了要计算的第一个数字。 :(

Button plusBtn = (Button) findViewById(R.id.plusButton1);
plusBtn.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        EditText inputOne = (EditText) findViewById(R.id.firstnumberTxt);
        String message = inputOne.getText().toString();

        EditText inputTwo = (EditText) findViewById(R.id.secondnumberTxt);
        String message2 = inputTwo.getText().toString();


        int first = Integer.parseInt(message);
        int second = Integer.parseInt(message2);

        int sum = first + second;
        TextView resultTxt = (TextView) findViewById(R.id.resultTextview);
        resultTxt.setText("Result is  " + sum);

        Toast.makeText(MyCalcActivity.this, message, Toast.LENGTH_LONG).show();
    }
});
}

有没有办法可以做到这一点?

4 个答案:

答案 0 :(得分:0)

我认为你是初学者,只是复制代码而不知道它。 所以让我直接告诉你。

     //Actual toast
        Toast.makeText(MyCalcActivity.this, message, Toast.LENGTH_LONG).show();
    // Exaplaining toast
        Toast.makeText(1, 2, 3).show();
  • 在第一个参数1中,它是toast所在的活动 所示。就像你在代码中看到的那样,它是MyCalcActivity.this 意味着它是您当前的活动,因为输入了this

  • 在第二个参数2中,您希望显示它。请参阅您使用message代码中的代码,我们可以从您的代码中了解该消息是string,其值为editText,称为inputOne 。但你不想要那个,对吧?您想要textView resultTxt的值,那么您使用message的原因是什么?!将message替换为resultText.getText()以获取所需的textview值。

  • 在最后一个参数中,3。它是toast message的长度。你想要多久?它是什么。在你的代码中它被设置为Long toast消息,我认为它是大约3秒。如果您想要较短的一个,请使用Toast.LENGTH_SHORT或自定义的持续时间。

最后,这是您想要的代码。

Toast.makeText(MyCalcActivity.this, resultTxt.getText().toString(), Toast.LENGTH_LONG)
.show();

抱歉花了太长时间,但很乐意帮助你。我们都是从底层开始的。但请你在下次问之前再搜索一下,有很多类似的问题和答案都是这样解释的。

答案 1 :(得分:0)

现在你将消息放入toast,即“firstnumberTxt”的值,而不是使用你刚刚完成计算的结果。

您需要做的就是在吐司中使用结果:

Toast.makeText(MyCalcActivity.this, sum, Toast.LENGTH_LONG).show();

你也可以走很长的路,得到TextView中的内容:

Toast.makeText(MyCalcActivity.this, resultText.getText().toString(), Toast.LENGTH_LONG).show();

答案 2 :(得分:0)

首先,您要在toast中调用消息

Toast.makeText(MyCalcActivity.this, message, Toast.LENGTH_LONG).show();

而是在toast do中显示sum的值,

Toast.makeText(MyCalcActivity.this, sum, Toast.LENGTH_LONG).show();

或者,如果要在resultTextView中显示值,请执行

 Toast.makeText(MyCalcActivity.this, resultText.getText().toString(), Toast.LENGTH_LONG).show();

答案 3 :(得分:0)

Button plusBtn = (Button) findViewById(R.id.plusButton1);
plusBtn.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        EditText inputOne = (EditText) findViewById(R.id.firstnumberTxt);
        String message = inputOne.getText().toString();

        EditText inputTwo = (EditText) findViewById(R.id.secondnumberTxt);
        String message2 = inputTwo.getText().toString();


        int first = Integer.parseInt(message);
        int second = Integer.parseInt(message2);

        int sum = first + second;
        TextView resultTxt = (TextView) findViewById(R.id.resultTextview);


        resultTxt.setText(String.valueOf(sum));

        Toast.makeText(MyCalcActivity.this,"Result is" + resultTxt, Toast.LENGTH_LONG).show();
    }
});
}