1

Android 2.3から4.1へのorg.w3cの動作で何かが変わったかどうか、誰かが知っているかどうか尋ねたい

私は XML ノードを持っています:

<block nr="1" canceled="FALSE" lesson="TRUE">
  <subject change="FALSE">AS</subject>
  <room change="FALSE">1234</room>
  <person change="FALSE">Name</person>
</block>

これらのノードをElement、属性値を取得したい関数に渡します

GetAttributeByTag(pNode, "block", "lesson");

private String GetAttributeByTag(Element pElement, String pTag, String pAttributeTag) 
{
    Element toReturn = (Element)pElement.getElementsByTagName(pTag).item(0);
    return toReturn.getAttribute(pAttributeTag).trim();     
}

私のデバイス (Samsung Galaxy S Advance with Android 2.3) では、toReturn に pElement と同じ要素が含まれているため、属性値を返すことができます。

しかし、別のデバイス(Android 4.1を搭載したGalaxy S2)ではnull(Element)pElement.getElementsByTagName(pTag).item(0)

誰かが理由を知っていましたか?

4

1 に答える 1

1

2 つの Android バージョン間のバグ修正のようです。element.getElementsByTagName には、それ自体ではなく、要素の子孫のみを含める必要があります。

于 2013-10-18T00:30:03.600 に答える