【问题标题】:Appcelerator Titanium - XML parse in Android not workingAppcelerator Titanium - Android 中的 XML 解析不起作用
【发布时间】:2017-06-23 14:08:40
【问题描述】:

正如标题所说,在 Android 中我无法让 XML 解析工作。在 iOS 中正常工作。 此代码来自 Appcelerator,这是文档页面的链接:http://docs.appcelerator.com/platform/latest/#!/guide/Working_with_XML_Data

    var win = Titanium.UI.createWindow({
        backgroundColor:'#fff'
    });

    var data = [];
    var table = Ti.UI.createTableView({backgroundColor:"red"});
    win.add(table);

    var url="http://apod.nasa.gov/apod.rss"; //  rss feed url
    var xhr = Titanium.Network.createHTTPClient();

    xhr.onload = function() {
        // Data is returned from the blog, start parsing
        var doc = this.responseXML.documentElement;

        // begin looping through blog posts
        var items = doc.getElementsByTagName("item");
        for (var i=0;i<items.length;i++) {
            data.push({
                title: items.item(i).getElementsByTagName("title").item(0).text
            });
        }
        table.data = data;
    };
    xhr.onerror = function(e) {
        // should do something more robust
        alert('Network error '+e.error);
    };

    xhr.open('GET',url);
    xhr.send();

    win.open();

正如您在这张图片中看到的那样,结果有所不同 IOS and Android example image

我使用的是 Titanium SDK 6.1.0.GA

其他人也发生过同样的事情吗?

谢谢

【问题讨论】:

  • 您在运行安卓应用时是否在控制台中遇到任何错误?
  • @AdamPaxton 不,我在控制台中没有收到任何错误。我还用不同的 android API 对其进行了测试,结果是一样的......
  • 您是否尝试过使用以前版本的 Titanium SDK?如果是这样 - 哪一个和结果相同?
  • @nebu 刚刚尝试使用钛 sdk 5.2.0.GA 并返回错误:消息:未捕获的类型错误:无法读取 null 的属性 'documentElement' 有人可以测试上面的代码,看看它是否有效?谢谢:)

标签: android ios xml appcelerator appcelerator-titanium


【解决方案1】:

text 替换为textContent

    data.push({
        title: items.item(i).getElementsByTagName("title").item(0).textContent
    });

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-03
  • 2011-12-02
  • 2012-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多