【发布时间】:2014-01-22 03:13:26
【问题描述】:
好的,我从用户输入的一些数据中创建了一个简单的字符串。我现在希望将此数据作为字符串(类似 CSV 的字符串)传递给下一个活动。在一个例子中,我看到了这个:
intent.putExtra(EXTRA_MESSAGE, string_to_be_sent)
但这会引发一个错误,说 EXTRA_MESSAGE 不是一个值 - 即。它被意图识别。我认为这个例子已经过时了。我应该用什么来发送字符串?我查看了文档并发现了这一点:
public Intent putExtra (String name, String value)
但是我的值的名称是什么?我选择什么,还是必须是包名?? 感谢您的帮助:)
【问题讨论】:
-
你确实需要做一些基本的编程教程。 EXTRA_MESSAGE 是您尚未在任何地方定义的变量。对于大写和下划线的用户来说,按照惯例,它是一个常量,所以我希望看到类似
final string EXTRA_MESSAGE = "Name of string extra";的东西,这是一个很好的例子,说明为什么“复制粘贴编程”不是一个成功的策略。没有已知的学习捷径。在提出基本问题之前,您还应该养成阅读文档的习惯。阅读putExtra的文档会告诉你你需要知道的一切。 -
EXTRA_MESSAGE只是一个唯一字符串标签,您应该使用它从第二个活动中检索数据 -
我有。这是基于一个我认为已经过时的例子。 EXTRA_MESSAGE 是该方法识别的某种形式的 int。
-
从那个页面 =>
In order for the next activity to query the extra data, you should define the key for your intent's extra using a public constant. So add the EXTRA_MESSAGE definition to the top of the MainActivity class: public class MainActivity extends Activity { public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE"; ... }如果您阅读了文档,它会非常清楚地表明它是您想要用作额外密钥的任何值。我重复。这一切都清楚地记录在案。
标签: java android eclipse android-intent