首页 > 解决方案 > 如何获取方法的返回值?

问题描述

我是一个创建单位转换器的新手。我有两节课,第一节课有这个方法:

public String cardName;

public String StartConversion(View view){
    Intent intent = new Intent(this, ConversionActivity.class);
    startActivity(intent);
    return cardName = view.getResources().getResourceEntryName(view.getId());
}

我想在我的第二堂课中获取并使用 cardName 的值,所以:

MainActivity myObj = new MainActivity();
Toast.makeText(getApplicationContext(), "cardName: " + myObj.cardName, Toast.LENGTH_LONG).show();

但这不起作用。我知道局部变量只能在它们的范围内访问,所以我这样做了。他们说只有将其设为类成员才能访问它,这确实有效,但它具有 NULL 值。

标签: javaandroid

解决方案


有一系列方法可以解决您的问题。例如,

首先- StartConversion 方法用于设置卡名,然后提供 getter 方法进行访问。

其次-仅使用 StartConversion 的方法返回您想要的。但是您应该将代码更改为 return view.getResources().getResourceEntryName(view.getId());, 以删除cardName =. 应该调用外部类来访问您想要的方法。

总之,要么调用方法直接访问,要么给一个setter,然后使用getter访问。


推荐阅读