在我的Android Application
的服務器端應用程序也由我開發。在這個應用程序Android應用程序從服務器請求一些XML
並解析它。 XML
包含描述應用程序中應該有多少標籤的信息,並且每個標籤都有一個ListView
,而每個列表項可以導航到另一個Activity
,這也可能導致另一個子標記ListView
此級別是無限的。我從服務器生成的 XML
是這種類型。在Android中解析和創建無限/無限級別的List /子列表中的XML
<Application>
<Tabs>
<Tab id="1" tabtitle="Info">
<ListItems>
<ListItem id="1" itemtype="list" itemtitle="1.1" itemdata="Issue1,Issue2,Issue3,Issue4,Issue 5">
</ListItem>
<ListItem id="3" itemtype="list" itemtitle="1.2" itemdata="News Links">
</ListItem>
<ListItem id="5" itemtype="list" itemtitle="1.3" itemdata="sampleDataURL type">
<ListItems>
<ListItem id="1" itemtype="list" itemtitle="1.3.1" itemdata="some data">
</ListItem>
<ListItem id="3" itemtype="list" itemtitle="1.3.2" itemdata="some data">
<ListItems>
<ListItem id="1" itemtype="list" itemtitle="1.3.2.1" itemdata="Issue1,Issue2,Issue3,Issue4,Issue 5">
</ListItem>
<ListItem id="3" itemtype="list" itemtitle="1.3.2.2" itemdata="News Links">
</ListItem>
</ListItems>
</ListItem>
</ListItems>
</ListItem>
</ListItems>
</Tab>
<Tab id="2" tabtitle="More">
<ListItems>
</ListItems>
</Tab>
<Tab id="3" tabtitle="Share">
<ListItems>
</ListItems>
</Tab>
</Tabs>
</Application>
結果我我的機器人可以在運行時生成3個標籤,但請指導什麼類型的代碼/邏輯應該我撰寫寫它的SAXParser
和我應該在Android應用程序通過解析器填充什麼類型的模型數據。我應該去HashMap
而不是ArrayList<CustomClass>
。
這對我來說非常具有挑戰性,因爲它能夠有效且穩健地實現它。
你真的有內存或時間解析無限列表嗎? – 2011-03-23 11:31:52
嘿人的名單將永遠不會超過4-5的水平,但在編寫代碼的時候,我們無法知道列表可能會更長 – Abhi 2011-03-23 11:38:00
您可以使用「ViewAnimator +選項卡視圖」來控制基於標籤的設計。這樣,你將不得不創建3個不同的活動,這將作爲3個標籤的內容。在每個活動中,使用ViewAnimator作爲最外層佈局,並根據您的要求添加列表視圖。 對於數據結構,您可以使用hashmap或arrayList中的任何一個..但最後它最終取決於您使用它們的效率。 可能會對此有所幫助.. – mudit 2011-03-25 13:19:29