【发布时间】:2014-03-20 10:47:56
【问题描述】:
我有一个HashMap,我在其中解析了一些 JSON 数据。该地图有一些字符串值,它们是 Urls。我将 Map 值显示为ListView。我想将与该特定列表条目关联的 URL 打开到另一个包含 WebView 的活动中。
但是当我尝试在活动之间传递值时,我得到了NullPointerException。
这是我的代码:-
MainActivity.java
map = new HashMap<String,String>();
map.put(SOURCETITLE, title);
map.put(TITLE, description);
map.put(THUMBNAILPATH, thumbnail);
myNewsList.add(map);
}
ArrayList<HashMap<String, String>> myList = new ArrayList<HashMap<String,String>>();
itemsAdapter = new LazyAdapter(this, myList);
newsList.setAdapter(itemsAdapter);
newsList.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0,
View arg1, int position, long arg3)
{
// TODO Auto-generated method stub
Intent nIntent = new Intent(Home.this,DetailedInfo.class);
nIntent.putExtra("Items", myList);
startActivity(nIntent);
}
});
DetailedInfo.Java
Intent in = getIntent();
data = (ArrayList<HashMap<String, String>>) in.getSerializableExtra("Items");
for(int pos=0;pos<data.size();pos++)
{
HashMap<String, String> urls = data.get(pos);
String newUrl = urls.get(Home.URL);
}
myNews = (WebView)findViewById(R.id.webNewsDetails);
myNews.getSettings().setJavaScriptEnabled(true);
myNews.loadUrl(newUrl);
myNews.setWebViewClient(new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
// TODO Auto-generated method stub
view.loadUrl(url);
return true;
}
});
【问题讨论】:
标签: java android android-listview hashmap