`
chengyu2099
  • 浏览: 469342 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

android 入门demo 解析xml

阅读更多
package com.isoftstone.cry;

import java.io.IOException;

import org.xmlpull.v1.XmlPullParserException;

import android.app.Activity;
import android.content.res.Resources;
import android.content.res.XmlResourceParser;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;

import com.isoftstone.cry.R;

public class AndroidActivity extends Activity 
{
	private Button myBtn ;
	private Button xmlBtn ;
	private TextView xmlView ;
	private ImageView imageView ;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        /***************button**************************/
        //获取按钮组件
        myBtn = (Button)findViewById(R.id.button1);
        //获取activity资源 
        Resources resources = this.getResources();
        int bwidth = (int)resources.getDimension(R.dimen.btnWidth);
        int bheight = (int)resources.getDimension(R.dimen.btnHeight);
        System.out.println("bwidth = "+bwidth);
        System.out.println("bheight = "+bheight);
        myBtn.setEnabled(false);
        myBtn.setWidth(bwidth);
        myBtn.setHeight(bheight);
        //设置背景颜色
        this.getWindow().setBackgroundDrawableResource(R.color.blue_bg);
        
        /********************xml*********************/
        //设置button实例、textview实例
        xmlBtn = (Button)this.findViewById(R.id.button2);
        xmlView = (TextView)this.findViewById(R.id.textView1);
        //设计button监听
        xmlBtn.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) 
			{
				int count = 0;
				//解析XML文件
				StringBuilder sb = new StringBuilder();
				XmlResourceParser xrp = getResources().getXml(R.xml.test);
				//如果没有到文件尾,继续循环
				try {
					while(xrp.getEventType() != XmlResourceParser.END_DOCUMENT)
					{
						if(xrp.getEventType() == XmlResourceParser.START_TAG)
						{
							String name = xrp.getName();
							if(name.equals("custom"))
							{
								//计数器
								count ++;
								sb.append("第"+count+"客户信息");
								sb.append(xrp.getAttributeName(0)+"\n");
								sb.append(xrp.getAttributeName(1)+"\n");
								sb.append(xrp.getAttributeName(2)+"\n");
							}
						}else if(xrp.getEventType() == XmlResourceParser.END_TAG){
							
						}else if(xrp.getEventType() == XmlResourceParser.TEXT){
							
						}
						//下一个标签
						xrp.next();
					}
					xmlView.setText(sb.toString());
				} catch (XmlPullParserException e) {
					e.printStackTrace();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		});
        
        /********************drawables*********************/
        imageView = (ImageView)this.findViewById(R.id.imageView2);
        Drawable drawable = this.getResources().getDrawable(R.drawable.psu);
        imageView.setImageDrawable(drawable);
        
        /********************layout*********************/
        
        /********************menu*********************/
        
    }
}

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello"
        android:textColor="@color/red_text" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/btn" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/getXmlBtn" />
	<ImageView
          android:id="@+id/imageView1"
          android:layout_width="match_parent"
 			android:layout_height="100dp"
			android:src="@drawable/fc" />

      <ImageView
        android:id="@+id/imageView2"
        android:layout_width="match_parent"
        android:layout_height="100dp"/>

      <TableLayout
          android:id="@+id/tableLayout1"
          android:layout_width="match_parent"
          android:layout_height="wrap_content" >

          <TableRow
              android:id="@+id/tableRow1"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" >
	        <TextView
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:text="@string/hello"
	        android:textColor="@color/red_text" />
            
	        <TextView
	        android:layout_width="fill_parent"
	        android:layout_height="wrap_content"
	        android:text="@string/hello"
	        android:textColor="@color/red_text" />
	        
          </TableRow>

          <TableRow
              android:id="@+id/tableRow2"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" >
	        
              <Button
		        android:id="@+id/button1"
		        android:layout_width="wrap_content"
		        android:layout_height="wrap_content"
		        android:text="@string/btn" />
              <Button
		        android:id="@+id/button1"
		        android:layout_width="wrap_content"
		        android:layout_height="wrap_content"
		        android:text="@string/btn" />
              
          </TableRow>

      </TableLayout>
      
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.08"
        android:text="" />
	
</LinearLayout>

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <custom name="tom" age="20" email="165487@qq.com" />
    <custom name="kite" age="18" email="maoiue@qq.com" />
</resources>
分享到:
评论

相关推荐

    Android 入门demo源码

    【Android入门Demo源码详解】 Android作为全球最受欢迎的移动操作系统之一,是许多开发者入门编程的首选平台。这个“Android入门demo源码”是专为初学者设计的学习资源,旨在通过实际操作来帮助理解Android开发的...

    安卓Android源码——自定义控件入门级demo.zip

    这个“安卓Android源码——自定义控件入门级demo.zip”压缩包提供了一些基础的实例,帮助开发者了解和掌握自定义控件的基本步骤。下面将详细介绍相关知识点。 1. **自定义控件的动机**: 自定义控件的主要目的是...

    Android自定义控件入门级demo.zip

    本示例"Android自定义控件入门级demo.zip"将引导开发者逐步了解如何创建和使用自定义控件。下面,我们将深入探讨这个话题。 一、自定义控件的意义 在Android系统中,虽然已经提供了丰富的内置控件,如Button、...

    安卓网站交互JSONxmlWebserviceUPnP相关-WebService入门Demo.rar

    本教程将通过一个名为"WebService入门Demo"的示例项目,探讨如何使用JSON、XML、Web Service以及UPnP(通用即插即用)技术来实现Android设备与服务器之间的通信。 首先,让我们了解一下JSON(JavaScript Object ...

    Android开发入门与实战代码

    然后,通过使用如SAX或Pull解析器解析XML数据,提取文章标题、链接和描述。最后,将这些信息展示在ListView或RecyclerView中,提供用户友好的界面。这一过程能帮助开发者熟悉Android与网络交互的能力,以及数据处理...

    android apidemo

    API Demo演示了如何使用HttpURLConnection、Volley、OkHttp等库进行网络请求,以及JSON解析、XML处理等数据交换技术。 4. 多媒体处理:涉及音频、视频、图像的编码解码、播放控制等,如MediaPlayer、ExoPlayer、...

    集成大华Android Sdk测试Demo

    **二、SDK测试Demo解析** 1. **Demo项目结构** - `DaHuaProTest`:这是测试Demo的主项目,通常包含必要的源代码、资源文件以及配置文件。 - `src`:源代码目录,其中包含Activity、Service、BroadcastReceiver等...

    Android应用源码之自定义控件入门级demo.zip

    本示例"Android应用源码之自定义控件入门级demo"提供了一个学习和理解自定义控件基础知识的绝佳平台。以下将深入探讨这个主题,以及如何通过源码来实践。 一、自定义控件概述 自定义控件允许开发者扩展Android系统...

    android程序自启动实现demo

    本文将深入解析如何实现一个Android程序自启动的Demo,适合初级开发者入门学习。 首先,我们要明白在Android 6.0(API级别23)以下,自启动的实现相对简单。从Android 6.0开始,为了优化电池寿命和用户体验,Google...

    Android代码-安卓开发艺术Demo

    本篇将围绕"Android代码-安卓开发艺术Demo"这一主题,详细解析Android开发过程中的关键知识点,通过AndroidDevelopmentArt-master这个项目,我们将深入探讨Android应用开发的核心技术。 1. **Android Studio入门** ...

    android 入门知识简介

    ### Android入门知识详解 #### 一、新建Android工程项目 在开始Android应用开发之旅之前,首先需要熟悉如何在集成开发环境(IDE)中搭建一个基本的Android应用项目。本章节将详细介绍如何使用Eclipse来创建一个名...

    actionbar 入门儿 demo

    1. 设置ActionBar:在Android 3.0及以上版本,系统默认提供了ActionBar,可通过在`AndroidManifest.xml`中的Activity标签添加`android:theme="@style/Theme.AppCompat"`来启用。对于更低版本,可以借助AppCompat库...

    Android开发快速入门

    你可以通过Demo学习如何使用HttpURLConnection或OkHttp库进行网络请求,以及解析JSON或XML数据。 5. **权限管理**:Android的权限管理系统确保了应用的运行安全。你需要在Manifest文件中声明所需的权限,如访问网络...

    Android应用源码之自定义控件入门级demo-IT计算机-毕业设计.zip

    这个"Android应用源码之自定义控件入门级demo"是专为IT计算机专业学生和移动开发App爱好者设计的学习资源,适用于毕业设计和论文研究。通过这个项目,你可以深入理解自定义控件的原理和实现步骤。 首先,我们要了解...

    Android高级应用源码-自定义控件入门级demo.rar

    8. **属性回调**:使用Attrs.xml文件定义自定义属性,然后在Styleable类中解析这些属性,使其可以在XML布局文件中使用。 9. **依赖注入**:在复杂项目中,可以使用依赖注入框架(如Dagger2)来提高代码可维护性和...

    安卓自定义控件相关-自定义控件入门级demo.zip

    这个“安卓自定义控件相关-自定义控件入门级demo.zip”压缩包包含的两个子文件,"zdyview2"和"zdyview",很可能是两个示例项目,用于帮助开发者理解和实践自定义控件的创建过程。 自定义控件通常涉及以下几个核心...

    自定义控件入门级demo.zip

    5. 设置属性:通过重写getAttributeValue()方法解析XML布局文件中的自定义属性。同时,可以使用 TypedArray 获取并设置这些属性值。 6. 注册到Android系统:在res/values/attrs.xml文件中定义自定义属性,在res/...

    大华网络摄像机Android SDK的DEMO

    总的来说,大华网络摄像机Android SDK的DEMO为开发者提供了一个快速入门的平台,通过学习和实践,我们可以构建出功能丰富的Android应用,实现对大华网络摄像机的全方位控制,满足各种监控需求。无论是在家庭、商业...

    ionic3入门级demo

    本篇文章将围绕“ionic3入门级demo”进行深入解析,帮助初学者快速掌握Ionic 3的基本概念和应用。 首先,我们需要理解Ionic 3的核心组件。这些组件包括但不限于:导航(Navigation)、页面(Pages)、服务...

    arcgis-android-100.1.0 Demo

    《ArcGIS Android 100.1.0 入门指南及Demo解析》 ArcGIS是Esri公司推出的一款强大的地理信息系统(Geographic Information System),它提供了丰富的地图制作、地理数据分析和空间信息处理功能。在移动开发领域,...

Global site tag (gtag.js) - Google Analytics