【发布时间】:2014-03-13 06:35:38
【问题描述】:
嗯,正如我在标题中提到的,我无法从一个活动中获取数据,到另一个活动。我正在制作一个非常简单的 RSS 阅读器,它异步加载数据,将它们发送到 listview 并在新活动的 webview 中打开选定的文章。问题是,当我尝试使用 webview 启动活动时,无法从主要活动传递数据。 所以这就是我正在做的事情:
1) 在第一个活动(主要活动)中,我从我的 listview 元素中获取数据,用户点击:
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
News clicked = (News) adapter.getItem(arg2);
String clickedTitle = clicked.title;
String clickedLink = clicked.link;
System.out.println("Title: " + clickedTitle + " / LINK: " + clickedLink); /*Here I can see my data in logs -> they are correct at this moment*/
Intent intent = new Intent(MainActivity.this, OpenFullArticle.class);
intent.putExtra(clickedTitle, "clickedTitle");
intent.putExtra(clickedLink, "clickedLink");
startActivity(intent);
}
});
所以现在一切正常,但是,当一个新的活动开始时(OpenFullArticle 活动),我正在这样做:
public class OpenFullArticle extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_open_full_article);
String title = getIntent().getExtras().getString("clickedTitle");
String link = getIntent().getStringExtra("clickedLink");
System.out.println(title); //Tried link too, simultaneous each one - both ar null
}
所以我被困在这一刻,不知道我做错了什么。尝试了调试器,检查了 Intent,它没有额外的东西,这是我在第一个活动中添加的。 也许你可以给我一个线索,什么会导致这样一个奇怪的问题。
附:如果有需要,我可以提供完整的代码或者github上的完整项目。
【问题讨论】:
标签: java android android-intent nullpointerexception android-activity