如何获取URL以将其传递给活动

时间:2013-05-24 13:31:43

标签: java android url hashmap

我的代码如下

// Hashmap for ListView
final ArrayList<HashMap<String, String>> appealsList = new ArrayList<HashMap<String, String>>();

listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

           TextView urlTv = (TextView) view.findViewById(R.id.url);     
           String url = urlTv.getText().toString();
           url = appealsList.get("url");

           for(HashMap map: appealsList){
               url = map.get(key);
           }
           //Intent intent = new Intent(Intent.ACTION_VIEW);
           Intent intent = new Intent(getApplicationContext(), LaunchReadMoreActivity.class);
           intent.putExtra("url", url);
           //intent.setData(Uri.parse(url));
           startActivity(intent);
}

});

appealsList包含从JSONarray获取的日期,标题,网址 我的网址总是空的?

如何从appealsList中提取url字符串。

我不想迭代列表,但如果用户点击列表中的任何位置,即列表中的任何记录,我应该能够在列表中选择该对象的URL。

这就是我开始工作的方式:

   //TextView urlTv = (TextView) view.findViewById(R.id.url);     
   //String url = urlTv.getText().toString();
   String url = appealsList.get(position).get("url");              
   //Intent intent = new Intent(Intent.ACTION_VIEW);
   Intent intent = new Intent(getApplicationContext(), LaunchReadMoreActivity.class);
   intent.putExtra("url", url);
   //intent.setData(Uri.parse(url));
   startActivity(intent);

2 个答案:

答案 0 :(得分:1)

不确定此代码是否有效。如果appealsList.get("url")appealsList,您如何致电ArrayList?尝试appealsList.get(position).get("url")

答案 1 :(得分:1)

appealsList.get(position).get("url");位置会给出ArrayList中项目的索引,然后您可以使用键值“url”从地图中获取值。

例如:

在ListView项目单击侦听器中尝试以下代码:

  String myurl = appealsList.get(position).get("url").toString();