0

我想在 XML 中给出一个子节点的值,它是一个 URL,然后把这个值放在一个字符串中。我在解析 XML 后使用 HashMap 将地图放入列表(songList)中。xml 中的 thumb_url 包含 URL 的值,我想将该值放在一个名为“link”的字符串中。

    // XML node keys
static final String KEY_SONG = "song"; // parent node
static final String KEY_ID = "id";
static final String KEY_TITLE = "title";
static final String KEY_ARTIST = "artist";
static final String KEY_DURATION = "duration";
static final String KEY_THUMB_URL = "thumb_url";

和:

    ArrayList<HashMap<String, String>> songsList = new ArrayList<HashMap<String, String>>();

    XMLParser parser = new XMLParser();
    String xml = parser.getXmlFromUrl(URL); // getting XML from URL
    Document doc = parser.getDomElement(xml); // getting DOM element

    NodeList nl = doc.getElementsByTagName(KEY_SONG);
    // looping through all song nodes <song>
    for (int i = 0; i < nl.getLength(); i++) {
        // creating new HashMap
        HashMap<String, String> map = new HashMap<String, String>();
        Element e = (Element) nl.item(i);
        // adding each child node to HashMap key => value
        map.put(KEY_ID, parser.getValue(e, KEY_ID));
        map.put(KEY_TITLE, parser.getValue(e, KEY_TITLE));
        map.put(KEY_ARTIST, parser.getValue(e, KEY_ARTIST));
        map.put(KEY_DURATION, parser.getValue(e, KEY_DURATION));
        map.put(KEY_THUMB_URL, parser.getValue(e, KEY_THUMB_URL));



        // adding HashList to ArrayList
        songsList.add(map);

    }

我实际上想将“链接”提供给“new DownloadFileFromURL().execute(link);” 按歌曲列表的行后下载。最好的问候大家。

4

1 回答 1

0

我找到了答案。

诀窍是我应该通过链接表单适配器。getView()我在适配器的视图中添加了一个标签。view.setTag(song.get(MainActivity.KEY_LINK));. 然后在主要活动中通过String Link = view.getTag().toString();

我希望这可以帮助某人:)

于 2012-09-30T09:48:54.747 回答