java – Android:将信息从一个活动传递到另一个活动
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Android:将信息从一个活动传递到另一个活动,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2613字,纯文字阅读大概需要4分钟。
内容图文
参见英文答案 > How to pass an object from one activity to another on Android 31个
我试图将信息(更具体地说是一个有信息的类)从一个活动传递到另一个活动.在我的应用程序中,我有一个启动画面,负责加载和初始化变量.目标是将这些信息提供给实际游戏本身,以便可以使用,但我不知道该怎么做.在我的启动画面类中,我有这个方法,负责在加载所有内容后从启动画面移动到游戏:
private void moveToGame() {
loop.setRunning(false);
act.startActivity(new Intent(splash, MainActivity.class));
act.finish();
return;
}
然后主活动类有这行代码来实际游戏:
setContentView(new Environment(this, this));
Environment类的构造函数是Environment(Context context,Activity act)
目标是将构造器更改为Environment(Context上下文,ActivityAct,LoadInfo li)但是如何将信息一直传递给Environment构造函数?
编辑1 – LoadInfo类
public class LoadInfo {
private HashMap<String, Typeface> fonts;
private HashMap<String, Image> images;
private File logFile;
private File settingsFile;
private File gameDir;
public LoadInfo() {}
public LoadInfo(HashMap<String, Typeface> fonts, HashMap<String, Image> images, File logFile, File settingsFile, File gameDir) {
this.fonts = fonts;
this.images = images;
this.logFile = logFile;
this.settingsFile = settingsFile;
this.gameDir = gameDir;
}
public HashMap<String, Typeface> getFonts() {
return fonts;
}
public HashMap<String, Image> getImages() {
return images;
}
public File getLogFile() {
return logFile;
}
public File getSettingsFile() {
return settingsFile;
}
public File getGameDir() {
return gameDir;
}
public void setFonts(HashMap<String, Typeface> fonts) {
this.fonts = fonts;
}
public void setImages(HashMap<String, Image> images) {
this.images = images;
}
public void setLogFile(File logFile) {
this.logFile = logFile;
}
public void setGameDir(File gameDir) {
this.gameDir = gameDir;
}
public void setSettingsFile(File settingsFile) {
this.settingsFile = settingsFile;
}
public boolean fullyLoaded() {
return fonts != null && images != null && logFile != null && gameDir != null && settingsFile != null;
}
public String toString() {
if(logFile == null)
return "well no file to load";
return logFile.toString();
}
}
解决方法:
您可以将LoadInfo设置为Serializable,如下所示,
public class LoadInfo implements Serializable {
// your code,
}
在你的Splash Activity你可以像这样发送,
//LoadInfo loadInfo = new LoadInfo(); this may be your loadInfo object
Intent intent = new Intent(act, MainActivity.class);
intent.putExtra("load_info", loadInfo); // Add your LoadInfo object here
act.startActivity(intent);
在你的MainActvity中,你可以这样,
LoadInfo loadInfo = (LoadInfo) getIntent().getSerializableExtra("load_info");
setContentView(new Environment(this, this, loadInfo));
内容总结
以上是互联网集市为您收集整理的java – Android:将信息从一个活动传递到另一个活动全部内容,希望文章能够帮你解决java – Android:将信息从一个活动传递到另一个活动所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。