如何在Android中的另一个活动中使用一个活动的变量?

时间:2017-04-21 16:24:27

标签: java android

我们正尝试在一个活动中从用户处获取房间号(例如C123),并在不同的活动中使用该变量。 其他活动如下:

roomNewNums.put("A100", "1")

...

roomNewNums.put("C303", "198")

我们使用它来发送第二个活动的变量(第一个活动无关紧要):

public static Bundle myNums = new Bundle();

SecondActivity.myNums.putString("newNumber", "destPos");

我们在第三项活动中使用它来接收它:

String newNum = SecondActivity.myNum.getString("newNumber");

我们认为主要的错误是putString。它一直在说

  

无法解析符号' putString'

我们在网上检查了多个网站和论坛,但都没有帮助。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

  1. 创建一个新的function func_a(param_a, param_b, param_c) { alert(param_a); alert(param_b); alert(param_c); } function func_b(func_to_run, a, b) { func_b_param = "z"; // Will call "func_a" HERE! func_to_run(a, b, func_b_param); } func_b(func_a, a, b); 扩展MyApplication
  2. android.app.Application类中创建静态Bundle对象。

    MyApplication
  3. 使用public static Bundle mBundle = new Bundle(): 中的data对将Bundle添加到key-value

    SecondActivity
  4. MyApplication.mBundle.putString("newNumber", "destPos"); 中,从ThirdActivity获取data

    Bundle
  5. String newNum = MyApplication.mBundle.getString("newNumber"); 中的android:name节点中指定<application>属性:

    AndroidManifest.xml
  6. 希望这会有所帮助〜

答案 1 :(得分:0)

我有两种方法可以想到这样做

1)使用共享首选项在第一个活动中存储房间号,然后从共享首选项中获取它并使用它。

2)使用单例模式在模型类中存储数据,并在应用程序的任何地方使用它