0

我的代码如下

// 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);
}

});

上诉列表包含从 JSONarray 获取的日期、标题、url 我的 URL 总是空的?

如何从上诉列表中提取 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);
4

2 回答 2

1

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

例如:

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

  String myurl = appealsList.get(position).get("url").toString();
于 2013-05-24T13:37:43.620 回答
1

不确定此代码是否有效。appealsList.get("url")appealsList是一个时你怎么打电话ArrayList?试试吧appealsList.get(position).get("url")

于 2013-05-24T13:35:13.407 回答