在B类中,我有以下方法:
public String sendPlayerDataMethod() {
String testt = "thissss is for testing";
/***
Intent sendPlayerData = new Intent(this, FullPlayerList.class);
sendPlayerData.putExtra(Intent.EXTRA_TEXT, testt);
startActivity(sendPlayerData);
***/
return testt;
}
在A类中,我只想简单地调用此方法。我以为
ClassB.sendPlayerDataMethod()
可以解决问题,但是当我键入IntelliJ时,似乎并没有意识到。这两堂课都是公开的...
我想调用该方法,然后将返回值分配给ClassA中的var。
谢谢
最佳答案
听起来您想将信息从一个活动传递到另一个活动。
常见的方法是在类A中创建一个Intent(就像在您的注释代码中一样),并通过从类B中的onCreate()
访问有关savedInstance
方法的信息来接收该意图。
不要编写静态属性和内容之类的肮脏技巧。跟着
Activity Lifecycle。
public class ActivityA extends Activity {
...
public void sendPlayerDataMethod() {
String test = "thissss is for testing";
Intent sendPlayerData = new Intent(this, ActivityB.class);
sendPlayerData.putExtra(Intent.EXTRA_TEXT, test);
startActivity(sendPlayerData);
}
...
}
public class ActivityB extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
String test = savedInstanceState.getString(Intent.EXTRA_TEXT);
Log.i("MyApp", test); // log your String in LogCat
}
}
(此代码只是在没有IDE的情况下在此处开发的,因此无法保证)