正如問題標題所示,究竟是什麼EventType在Android Java中所做的事情? 我遇到了一個關於XML解析的Android開發教程,它似乎有一個關鍵部分。 我從來沒有真正理解它的功能,它爲什麼對XML解析有所幫助。 請給簡單的英語解釋,因爲我不是一個英語母語大聲笑,非常感謝。Android Java中的EventType究竟是什麼?
-1
A
回答
1
EventType本質上是XML文檔中包含某種重要數據的內容塊。所以這可能是一個標籤,一些文本等。Android XmlPullParser docs解釋是這樣的:
解析器的當前事件狀態可以通過調用 getEventType()方法來確定。最初,解析器處於START_DOCUMENT 狀態。
next()方法將解析器推進到下一個事件。從next返回的int值 確定當前解析器狀態,並且與從以下調用返回的值相同的 (與getEventType ())相同。
通常,XML解析器的工作方式是,遍歷文檔尋找感興趣的「事件」。換句話說,您希望繼續逐字逐個查看文檔,直到您看到感興趣的內容,例如開始標記或類似內容。當你發現一個事件時,你希望解析器停下來併爲你識別這個事件,這樣你就知道該怎麼做。該過程通常看起來是這樣的:
int eventType = xpp.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
if(eventType == XmlPullParser.START_DOCUMENT) {
System.out.println("Start document");
} else if(eventType == XmlPullParser.START_TAG) {
System.out.println("Start tag "+xpp.getName());
} else if(eventType == XmlPullParser.END_TAG) {
System.out.println("End tag "+xpp.getName());
} else if(eventType == XmlPullParser.TEXT) {
System.out.println("Text "+xpp.getText());
}
eventType = xpp.next();
}
System.out.println("End document");
所以在這段代碼中,我們允許分析器遍歷文件,停止在每一個「事件」(興趣點)。然後我們檢查事件,如果它像標籤一樣,我們讀取標籤的名稱 - 如果它是文本,我們閱讀文本等等。所以基本上你找到了你想要的「事件」,然後你閱讀內容該事件包含。
但基本上,事件只是你在文檔中的位置......它可能是文檔開始,文檔結束,標籤,一些文本等。事件類型只是區分我們可以預期的不同類型。各種事件類型通常以靜態常量存儲,類似於XmlPullParser
的工作方式。所以有一個您可以期待的事件列表,您只需檢查一下您到達的是哪一個。
希望有所幫助。
相關問題
- 1. Android中的NeighboringCell究竟是什麼。
- 2. 究竟是MySQL中的「尾隨空間」究竟是什麼?
- 3. Android的前景究竟是什麼?
- 4. 「句柄」究竟是什麼?
- 5. getGlobalVisibleRect()究竟是什麼?
- 6. Werkzeug究竟是什麼?
- 7. 究竟是什麼@ ViewDebug.ExportedProperty?
- 8. .parentNode究竟是什麼?
- 9. Heroku究竟是什麼?
- 10. session_hash究竟是什麼?
- 11. 究竟是什麼awakeFromNib?
- 12. 究竟是什麼任務
- 13. cout/cin究竟是什麼?
- 14. SKEmitterNode particleLifetime究竟是什麼?
- 15. 代表究竟是什麼?
- 16. 究竟是什麼情景
- 17. 究竟是什麼php.ini memory_limit?
- 18. 資源究竟是什麼?
- 19. App Pool究竟是什麼?
- 20. Erlang OTP究竟是什麼?
- 21. NoSQL究竟是什麼?
- 22. 雅典究竟是什麼?
- 23. ContextStaticAttribute究竟是什麼?
- 24. 「OAuth Provider」究竟是什麼?
- 25. 究竟是什麼插座
- 26. targetSdkVersion究竟是什麼?
- 27. CGContextRef究竟是什麼?
- 28. cacert.pem究竟是什麼?
- 29. ViewUserControl.ViewDataKey究竟是什麼?
- 30. Apache Karaf究竟是什麼?
感謝您的回答,它真的幫了我很多! –
沒問題,樂於幫忙! – NoChinDeluxe