我正在爲iPhone編寫一個聖經內存應用程序,我需要一些幫助來挑選UIWebView中顯示的經文。從UIWebView中提取XML元素
我有一個讀入UIWebView的xml文件,我需要能夠告訴用戶何時點擊特定的詩句。下面是XML文件的樣本:
<bible translation="KJV">
<testament name="Old">
<book name="Genesis">
<chapter number="1">
<verse number="1">In the beginning God created the heaven and the earth.</verse>
<verse number="2">And the earth was without form, and void; and darkness was upon the face of the deep. And the Spirit of God moved upon the face of the waters.</verse>
<verse number="3">And God said, Let there be light: and there was light.</verse>
<verse number="4">And God saw the light, that it was good: and God divided the light from the darkness.</verse>
<verse number="5">And God called the light Day, and the darkness he called Night. And the evening and the morning were the first day.</verse>
在上面相對於代碼,如果用戶水龍頭「一開始...」的程序需要知道(至少),用戶只需點擊一個「詩句「元素和它的」數字= 1「。
=================== EDITED ========================= =
這裏是我提出的解決方案..類型。有點。 讓我知道它聽起來如何。
我仍然有讀取XML文件的UIWebView。它也被格式化爲捆綁中的CSS文件。由於UIWebViews注意到鏈接(hrefs)[感謝喬納森]我可以在每個標記的詩句前面添加詩句數字(我知道它有點乏味,但我打算繼續做它:)
這樣, xml文件看起來像這樣:
<bible translation="KJV">
<testament name="Old">
<book name="Genesis">
<chapter number="1">
<n>1</n><verse number="1">In the beginning God created the heaven and the earth.</verse>
<n>2</n><verse number="2">And the earth was without form, and void; and darkness was upon the face of the deep. And the Spirit of God moved upon the face of the waters.</verse>
<n>3</n><verse number="3">And God said, Let there be light: and there was light.</verse>
<n>4</n><verse number="4">And God saw the light, that it was good: and God divided the light from the darkness.</verse>
<n>5</n><verse number="5">And God called the light Day, and the darkness he called Night. And the evening and the morning were the first day.</verse>
<n>6</n><verse number="6">And God said, Let there be a firmament in the midst of the waters, and let it divide the waters from the waters.</verse>
<n>7</n><verse number="7">And God made the firmament, and divided the waters which were under the firmament from the waters which were above the firmament: and it was so.</verse>
我要麼使用CSS來強制「N」標記作爲鏈接或只是把「href」屬性的元素來代替。 這樣,當經節號碼被發現之前,我可以通過自定義的方法來確定我在哪裏(我在哪個詩句中)。 這裏有一個帖子,我發現關於攔截的鏈接觸發的UIWebView中: http://dblog.com.au/iphone-development/iphone-sdk-tip-firing-custom-events-when-a-link-is-clicked-in-a-uiwebview/
我希望這會工作,它的一個小廣告hockish ..但計劃往往開始的方式。 任何人都可以嘗試這樣的事情嗎?
唐
你知道...獲得一些良好的睡眠時間很重要:) 除非我不知道如何調整它,否則UITableView可能在應用程序的外觀和感覺上有點具有挑戰性。這些經文經常會重疊並且位於同一行,並且每個經文都在自己的表格單元格中顯示爲塊狀。不過,我正在完成一個xml解析器的過程,所以如果有一種方法可以將UIWebView的連續外觀變成UITableView,我很樂於接受。 但我並不知道UIWebViews注意到了鏈接。這是一件好事,因爲我也有這個計劃。我會在一秒之內發佈我的想法。 – 2011-06-02 00:59:58
使用NSXMLParser來解析XML。瞭解如何首先解析XML,然後嘗試弄清楚如何使用它與UITableView。你不能試着去學習如何做一些事情,同時試圖把它解決成你正在試圖解決的問題。 – 2011-06-02 06:09:54
你說得對。我開始使用NSXMLParser將xml解析器放在一起,用Testaments-> Books [] - > Chapters [] - > Verses []構建一個聖經對象。當我想要自己顯示一個經文列表時,這對UITableView來說非常方便。 但是,我想使用UIWebView來顯示聖經本身,如下所示: http://www.ebooktechie。com/wp-content/uploads/2008/11/iphonebibleapp.jpg 通過這種方式,詩歌#將鏈接到即將到來的詩節的信息,其餘的文本將是常規的「詩歌」元素。 – 2011-06-02 13:02:15