Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 调用返回tv.getText()的方法返回的值与使用tv.getText()返回的值不同?_Java_Android - Fatal编程技术网

Java 调用返回tv.getText()的方法返回的值与使用tv.getText()返回的值不同?

Java 调用返回tv.getText()的方法返回的值与使用tv.getText()返回的值不同?,java,android,Java,Android,我构建了一个方法来检索TextView中的文本。我的问题是,当我调用该方法检索文本时,它总是返回“”。通过查看代码更容易看到问题: public TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { ... tv = (TextView) findViewById(R.id.edit_text); } public String g

我构建了一个方法来检索TextView中的文本。我的问题是,当我调用该方法检索文本时,它总是返回“”。通过查看代码更容易看到问题:

    public TextView tv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
      ...
      tv = (TextView) findViewById(R.id.edit_text);
    }

    public String getResult() {
      return tv.getText().toString();
    }

    public void test() {
      System.out.println("A:"+tv.getText().toString()); // Returns text
      System.out.println("B:"+getResult()); // Always returns ""

getResult()不应该等同于tv.getText().toString()?它们如何返回不同的值?

您的实现是正确的,您可以发布更多的代码,这样我们就可以看到您在哪里调用test()以及您在textview中设置的值。从哪里调用
test()
?看起来它们应该打印相同的内容,除非getResult()方法在子类中被重写,并且此代码正在该子类中运行。