Android - 无法对非静态字段进行静态引用

时间:2013-06-07 10:55:12

标签: java android string static

由于意图,字符串标题不能是静态的。字符串URL必须是静态的才能使用它。这意味着当我尝试将非静态字符串添加到静态字符串时,我会收到错误。我怎么能让它发挥作用?

错误:无法对非静态字段标题进行静态引用

Intent i = getIntent();
String title = i.getStringExtra("title");


static final String URL = "http://csddata.site11.com/dynamic.php?cat=" + title;

感谢。

2 个答案:

答案 0 :(得分:2)

如果你真的需要保持你的字符串静态和最终你可以做

static final String URL = "http://csddata.site11.com/dynamic.php?cat=%s";

Intent i = getIntent();
String title = i.getStringExtra("title");

String finalUrl = String.format(URL,title);

答案 1 :(得分:1)

这不起作用,因为在启动当前活动时,您将获得title的价值。

String URL是静态的&最后。静态变量仅在执行开始时初始化一次。在初始化任何实例变量之前,将首先初始化这些变量。 宣布该领域为“最终”#39;将确保该领域是一个恒定的,不能改变。

Intent i = getIntent();
String title = i.getStringExtra("title");


String URL = "http://csddata.site11.com/dynamic.php?cat=" + title;

你的代码现在必须罚款!!