`
从此醉
  • 浏览: 1045367 次
  • 性别: Icon_minigender_1
  • 来自: US
社区版块
存档分类
最新评论

Android布局类型资源(二)---XML、drawable、layout

 
阅读更多

Android中的资源是指非代码部分,如图片、音频、视频、字符等资源。一般我们都是在assets中保存原生的文件,如:MP3文件,Android程序不能直接访问,必须通过AssetManager类以二进制流的形式读取。布局类型文件一般都放在res文件夹下,如:anim,drawable,layout,values,xml,raw,menu等等,这些资源都可以通过R资源类直接访问。assets中的资源很少用到,res中的资源经常用到。

下面我们继续讲解如何使用这些典型布局类型文件:

四、使用原始XML资源:如果项目中使用到了一些原始的XML文件,那么我们可以定义一些XML文件供工程使用。

1)字符串的定义和使用:

资源位置:res/xml/test.xml

原始XML文件格式:

<?xml version="1.0" endocing="utf-8">

<resources>

<someElement name1=value1name2=value2 ...></string>

</resources>

获得XML资源方法:Resources.getXml()

引用XML资源方式:Java代码中:R.xml.xml_name

案例:获得原始XML文件的基本思路是:通过Resources.getXml()获得XML原始文件,得到XmlResourcePaser对象,通过该对象来判断是文档的开始还是结尾、是某个标签的开始还是结尾,并通过获得属性的方法来遍历XMl文件,从而访问MXL文件的内容。

xml文件:

<?xml version="1.0" encoding="utf-8" ?>
<resources>
    <person name="xiaomo" age="23" gender="male"></person>
</resources>

java中核心代码:

Resources r = getResources();
XmlResourceParser xrp = r.getXml(R.xml.person);
try{
//如果没有到文件尾继续循环
while(xrp.getEventType() != XmlResourceParser.END_DOCUMENT){
//如果是开始标签
if(xrp.getEventType() == XmlResourceParser.START_TAG){
String name = xrp.getName();
//判断标签名是否等于person
if(name.equals("person")){
counter++;
//获得标签属性追加到StringBuilder中
sb.append("第"+counter+"条用户信息:\n");
sb.append("name:"+xrp.getAttributeValue(0)+"\n");
sb.append("age:"+xrp.getAttributeValue(1)+"\n");
sb.append("gender:"+xrp.getAttributeValue(2)+"\n\n");
}
}else if(xrp.getEventType() == XmlPullParser.END_TAG){
}else if(xrp.getEventType() == XmlPullParser.TEXT){
}
xrp.next();
}
//将StringBuilder设置为TextView的文本
myTextView.setText(sb.toString());
myButton.setText("退出");
}catch(XmlPullParserException e){
e.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
}

五、使用drawables资源:一些图片或者颜色资源,主要用来绘制屏幕,分为三类:Bitmap File(位图文件)、Color Drawable (颜色)、NIne-Patch Image(九片图片)。

1)drawable资源的定义和使用:

资源位置:res/drawable/file_name.jpg/file_name.png/file_name.gif

获得字符串方法:Resources.getDrawable()

引用资源方式:Java代码中:R.drawable.file_name

字符串XML文件中:@[package:]drawable/file_name

案例:

myImageView = (ImageView)findViewById(R.id.mypic);
Resources r = getResources();
Drawable d = r.getDrawable(R.drawable.moto);
myImageView.setImageDrawable(d);

六、使用布局(layout)资源:布局资源是Android中最常用的一种资源,Android可以将屏幕中组件的布局方式定义在一个XML文件中,这有点像Web开发中的HTML页面,通过Activity.setContentView()方法将布局文件展示在Activity上。Android通过LayoutInflater类将XML文件中的组件解析为可视化的视图组件。

1)布局文件的定义和使用:

资源位置:res/layout/my_layout.xml(任意名称)

布局XML文件格式:

<?xml version="1.0" endocing="utf-8">

<布局类 xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/stirng_name" (属性)>

<视图组件或者其他嵌套布局类>

</布局类>

获得XML资源的方法:Activity.setContentView()

引用资源方式:Java代码中:R.layout.my_layout

字符串XML文件中:@[package:]layout/my_layout

案例:布局文件main.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >
    <TextView
       android:id="@+id/dimen_text"
     android:layout_width="fill_parent"
       android:layout_height="@dimen/text_height"
         android:textColor="@color/white"
        android:background="@color/blue"
       android:text="@string/hello_world" />
</RelativeLayout>

java核心代码:

setContentView(R.layout.main);

出处:http://blog.csdn.net/cl05300629/article/details/17716895 作者:伫望碧落

分享到:
评论

相关推荐

    Android代码-Custom shaped layout for Android 自定义形状布局

    Custom shaped layout for Android 自定义形状布局 Features Clip layout and its childview. 2 way to set shape. Also custom shape by implement ShapeModel. Dependency Add this in your build.gradle file ...

    Android--UI-新手必备源码master.zip

    包括Android布局,弹窗,配色,单击事件,UI,精美炫酷的activity切换动画和空间动画,是新手必备的源码,内含相关的Dome 25件。 - - 文件夹 PATH 列表 卷序列号为 4E8D-6931 C:. │ .txt │ Android-UI-新手必备...

    实验1--Android基础入门与Android-UI开发应用(1).doc

    或者用我所给出的截图 中图标)复制到res/drawable文件夹下 2)创建一个垂直的线性布局,并在线性布局中创建4个相对布局 3)在相对布局中添加相应的TextView 4)在values文件下的style.xml文件中存放抽取出来的样式 ...

    新版Android开发教程.rar

    ----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...

    黑马程序员 安卓学院 万元哥项目经理 分享220个代码实例

    |--layout布局样式之style配置 |--listview 页面 图片加文字 |--ListView之CursorAdapter异步查询框架之短信 |--ListView之动态添加子view |--ListView优化之分页加载 |--ListView优化之动态加载 |--ListView优化之...

    基于Android技术的界面设计与研究

    详细介绍了google 发布的新一代智能手机平台Android 的基本架构, 通过对其应用程序构成框架的分析,...最后通过对视图和布局的介绍,给出一种使用Android 技术的界面设计实现方案,并通过数据绑定实现了用户事件映射。

    自定义CheckBox样式

    &lt;item name="android:button"&gt;@drawable/selector&lt;/item&gt;//这个selector.xml中就是对应不同状态的CheckBox的背景图片 3:在selector.xml &lt;selector xmlns:android=...

    自定义SeekBar样式

    &lt;item android:state_pressed="true" android:drawable="@drawable/bg3" /&gt; &lt;!-- 普通无焦点状态 --&gt; &lt;item android:state_focused="false" android:state_pressed="false" android:drawable="@drawable/bg" /&gt;...

    android利用xml实现分割线

    方法1:在layout里面的布局xml 文件里加上面的代码 &lt;View android:layout_width=match_parent android:layout_height=1dp android:background=@color/orange_normal&gt; 效果图 在drawable文件夹里用 shape line ...

    Android布局自定义Shap圆形ImageView可以单独设置背景与图片

    XML中布局中定义ImageView,关健设置两个参数 Android:backgroup(设置背景),Android:src(设置ImageVIew中图片),圆形图片制作Drawable下定义xml shap样式(solid-color,size-width\hight) XML代码如下: &lt;...

    Google Android SDK开发范例大全(完整版)

    简介 黑莓和 iPhone 都提供了受欢迎的、高容量的移动平台,但是却分别针对两个不同的消费群体。黑莓是企业业务用户的不二选择。... &lt;application android:icon="@drawable/icon" android:label="@string/app_name...

    基于android studio实现通讯录管理系统源代码,安卓移动开发课程设计

    list_item.xml是单独的文件,创建时候需要选择创建xml文件下的layout xml file。 文件中的按钮背景文件在drawable文件夹下 所用到的icon资源位于mipmap文件夹下 values文件夹下声明了部分文字以及颜色样式。

    AndroidXML反编译神器工具使用说明

    AndroidXML反编译神器工具使用说明 1.先下载APK。 2.必须配好JAVA环境变量 ...8.最好找到res下anim,color,drawable(drawable开头的文件),layout文件XML里面全部的@id改为@+id就可以看见整个布局文件

    basic-android-calculator:使用 xml 进行布局的基本 android 计算器的源代码

    我们还有两个 xml 文件,一个在 res/layout ,它为计算器提供基本布局,一个在 res/drawable 下,它为布局中使用的按钮提供设计。 对于计算器的图标,使用图像 bg1。 您必须将其保存在可绘制文件夹下。

    android studio实现安卓移动开发课程设计通讯录管理系统源代码.zip

    list_item.xml是单独的文件,创建时候需要选择创建xml文件下的layout xml file。 文件中的按钮背景文件在drawable文件夹下 所用到的icon资源位于mipmap文件夹下 values文件夹下声明了部分文字以及颜色样式。

    Android移动开发实验4.doc

    《Android应用开发 》实验报告 实验序号:04 实验项目名称:微信朋友圈布局页面 "学 号" "姓 名" "专业、班 " " "实验地点" "指导教师" "实验时间 " " "实验目的及要求 " "1、熟悉Eclipse集成开发的步骤;......

    eoe客户端源代码

    res目录存放工程用到的图片、布局、样式等资源文件。 res目录的子目录: res ├ anim ├ color ├ drawable ├ drawable-hdpi ├ drawable-ldpi ├ drawable-mdpi ├ drawable-xhdpi ├ interpolator ├ layout ├...

    HelloAndroid:XML中的简单布局

    该应用程序在android中实现了绘制XML布局的基础。 属性如下:- 根布局是LinearLayout,并且方向已设置为垂直。 1个ImageView和4个TextView用于显示细节。 在/res/Drawable/mylayout.xml中,已经定义了卡片的...

    疯狂Android讲义(第2版)源代码 第6章~第9章

    2.2、布局管理(Layout):LinearLayout、TableLayout、FrameLayout、RelativeLayout; 2.3、基本界面组件:TextView、EditText; Button、ImageButton; 9Patch; RadioButton、CheckBox; ToggleButton;AnalogClock...

    高仿微信界面

    android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"&gt; &lt;include layout="@layout/layout_main_top" /&gt; &lt;android.support.v4.view.ViewPager ...

Global site tag (gtag.js) - Google Analytics