Android xml解析實(shí)例詳解
Android xml解析實(shí)例詳解
實(shí)現(xiàn)效果圖:
XmlActivity
package com.Android.xiong.gridlayoutTest; import android.app.Activity; import android.content.res.XmlResourceParser; import android.graphics.Color; import android.graphics.Typeface; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class XmlActivity extends Activity { private Button btn_xml; private EditText et_xml; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity_xml); initView(); } private void initView() { // 初始化組件 btn_xml = (Button) findViewById(R.id.btn_xml); et_xml = (EditText) findViewById(R.id.et_show); } public void xml(View v) { // xml解析器 XmlResourceParser xrp = getResources().getXml(R.xml.books); try { StringBuilder sb = new StringBuilder(""); while (xrp.getEventType() != XmlResourceParser.END_DOCUMENT) { // 如果遇到開(kāi)始標(biāo)簽 if (xrp.getEventType() == XmlResourceParser.START_TAG) { // 獲取該標(biāo)簽的簽名 String tagName = xrp.getName(); // 如果遇到book標(biāo)簽 if (tagName.equals("book")) { // 根據(jù)屬性名來(lái)獲取屬性值 String bookName = xrp.getAttributeValue(null, "price"); sb.append("價(jià)格:"); sb.append(bookName); // 根據(jù)屬性的索引來(lái)獲取屬性值 String bookePrice = xrp.getAttributeValue(1); sb.append(" 出版日期: "); sb.append(bookePrice); sb.append("書(shū)名:"); // 獲取文本節(jié)點(diǎn) sb.append(xrp.nextText()); } sb.append("\n"); } // 獲取下一個(gè)事件 xrp.next(); } //設(shè)置字體 et_xml.setTypeface(Typeface.SERIF); //設(shè)置字體大小 et_xml.setTextSize(30); //設(shè)置字體顏色 et_xml.setTextColor(Color.RED); et_xml.setText(sb.toString()); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
bookx.xml
<?xml version="1.0" encoding="utf-8"?> <books> <book price="109.0" 出版日期="2008年">瘋狂Java講義</book> <book price="108.0" 出版日期="2009年">輕量級(jí)JavaEE 企業(yè)應(yīng)用實(shí)戰(zhàn)</book> <book price="79.0" 出版日期="2009年">瘋狂Ajax講義</book> </books> activity_xml布局文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <Button android:id="@+id/btn_xml" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:onClick="xml" android:text="解析xml" /> <EditText android:id="@+id/et_show" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="顯示解析內(nèi)容" /> </LinearLayout>
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
- Android?XML數(shù)據(jù)解析要點(diǎn)介紹
- Android中的xml解析介紹
- Android實(shí)現(xiàn)向本地寫(xiě)入一個(gè)XML文件和解析XML文件
- 淺談Android Studio 解析XML的三種方法
- Android解析XML文件升級(jí)APK的方法
- Android中對(duì)xml文件解析的3種方式總結(jié)
- Android開(kāi)發(fā)中解析xml文件XmlUtils工具類(lèi)與用法示例
- Android編程簡(jiǎn)易實(shí)現(xiàn)XML解析的方法詳解
- Android開(kāi)發(fā)筆記XML數(shù)據(jù)解析方法及優(yōu)缺點(diǎn)
相關(guān)文章
Android實(shí)現(xiàn)EditText內(nèi)容保存為Bitmap的方法
這篇文章主要介紹了Android實(shí)現(xiàn)EditText內(nèi)容保存為Bitmap的方法,涉及Android中saveBitmap方法的簡(jiǎn)單使用技巧,需要的朋友可以參考下2016-01-01簡(jiǎn)單介紹Android開(kāi)發(fā)中的Activity控件的基本概念
這篇文章主要介紹了Android開(kāi)發(fā)中的Activity控件的基本概念,Activity控件的使用是安卓開(kāi)發(fā)的基礎(chǔ)之一,需要的朋友可以參考下2015-12-12教你如何使用platform密鑰對(duì)apk進(jìn)行簽名
這篇文章主要介紹了教你如何使用platform密鑰對(duì)apk進(jìn)行簽名,需要的朋友可以參考下2014-06-06Android Studio 運(yùn)行時(shí)出現(xiàn)的警告信息解決辦法
這篇文章主要介紹了Android Studio 運(yùn)行時(shí)出現(xiàn)的警告信息解決辦法的相關(guān)資料,需要的朋友可以參考下2017-06-06Android實(shí)現(xiàn)使用微信登錄第三方APP的方法
這篇文章主要介紹了Android實(shí)現(xiàn)使用微信登錄第三方APP的方法,結(jié)合實(shí)例形式分析了Android微信登錄APP的操作步驟與具體功能實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-11-11Android中在GridView網(wǎng)格視圖上實(shí)現(xiàn)item拖拽交換的方法
這篇文章主要介紹了Android中在GridView上實(shí)現(xiàn)item拖拽交換效果的方法,比起ListView的列表?xiàng)l目交換稍顯復(fù)雜,文中先介紹了關(guān)于創(chuàng)建GridView的一些基礎(chǔ)知識(shí),需要的朋友可以參考下2016-04-04android底部菜單欄實(shí)現(xiàn)原理與代碼
底部菜單欄很重要,我看了一下很多應(yīng)用軟件都是用了底部菜單欄做,我這里使用了tabhost做了一種通用的(就是可以像微信那樣顯示未讀消息數(shù)量的,雖然之前也做過(guò)但是layout下的xml寫(xiě)的太臃腫,這里去掉了很多不必要的層,個(gè)人看起來(lái)還是不錯(cuò)的,所以貼出來(lái)方便以后使用2013-01-01