如何从不同的活动中调用方法? 在我的主要活动中,我有一个按钮,显示一个对话框来设置游戏的难度级别。 然后单击开始游戏,开始一个包含所有游戏信息视图的新活动。 我需要将选择的难度级别发送到其他活动,但似乎无法弄清楚如何。
答案 0 :(得分:6)
你可以把它放在额外的意图:
Intent StartGame = new Intent(this, StartGame.class);
StartGame.putExtra("difficulty", difficultyLevel);
startActivity(StartGame);
然后在你的StartGame.class中你可以像这样(它假设它是一个字符串)来反复它:
Bundle extras = getIntent().getExtras();
if (extras != null) {
String difficulty= extras.getString("difficulty");
}
答案 1 :(得分:6)
嗯,我不知道我的解决方案有多健全,但我创建了一个myApplication类,它将Application类子类化。
这包含我想要调用的活动的引用
import android.app.Application;
public class myApplication extends Application {
public PostAndViewActivity pv;
}
当PostAndViewActivity调用oncreate时,将pv设置为指向自身。
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
((myApplication) getApplication()).pv = this;
然后,当我想调用我想要的方法时,我只使用这样的代码:
((myApplication) getApplication()).pv.refreshYourself();
也许有点hacky但它有效..... 我欢迎对此提出一些批评; - )