zoukankan      html  css  js  c++  java
  • Android中的资源布局

    一.android中的资源是在代码中使用的外部文件。图片,音频,动画和字符串等叫做android中的资源文件。
    二.Android工程 资源类型布局表
        与src源文件夹并列的两个文件夹assets和res用来保存资源文件。
         1.assets文件夹中放原声文件如MP3文件,通过AssetManager类以二进制流的形式访问
         2.res中资源可以通过R资源类直接访问:
           anim:保存动画
           drawable:位图文件
           layout:xml布局文件
           values:各种xml资源文件
                   arrays.xml:xml数组文件
                   colors.xml:xml颜色文件
                   dimens.xml:xml尺寸文件
                   styles.xml:xml样式文件
           raw:直接复制到设备中的源文件
           menu:xml菜单文件

     使用mContext.getResources()得到Resources对象来获取资源

    XML的写法如下:

    Android中的资源布局代码
    一个android工程中,有各种类型的资源文件,大致可以分为以下几种:

    1、 颜色 #RGB #ARGB #RRGGBB #AARRGGBB

    颜色资源应该位于
    <resourses></resourses>标签下

    路径res/values/colors.xml 名字可以随意

    定义
    <color name=”cname”>value</color>

    使用 Resourse.getValues.getColor

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

    <resources>

    <color name="white">#FFFFFF</color>

    <color name="black">#000000</color>

    </resources>

    2、 字串

    字串资源应该位于
    <resourses></resourses>标签下

    路径res/values/strings.xml

    定义
    <String name=”sname”>value</String>

    使用 Resourse.getValues.getString

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

    <resources>

    <string name="hello">Hello World, ResrouseTestActivity!</string>

    <string name="app_name">ResrouseTest</string>

    </resources>



    3、 图片

    图片资源一般使用png格式,使用其他格式的会出现各种问题,貌似不支持gif格式的图片,可是使用Movie来播放gif格式的图片

    路径res/drawable

    可以直接存放图片也可以是xml等配置文件(一般用于自定义组件)

    使用 getDrawable



    4、 图片的颜色

    位于res/values/my_drawable.xml名字随意

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

    <resources>

    <drawable name="solid_red">#FF0000</drawable>

    </resources>

    定义用于填充一个组件的颜色值,即给view设置背景色。用法和drawable下的图片一样,其实没多少意义,使用颜色定义就ok了,目前我是这样认为的,可能有更好的优点,不过我没发现罢了,嘿嘿,continue...

    5、 单位资源

    单位资源应该位于
    <resourses></resourses>标签下

    路径res/values/dimen.xml 名字可以随意

    使用和String、color类似

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

    <resources>

    <dimen name="dimen_name">2px</dimen>

    <dimen name="dimen_px">5px</dimen>

    <dimen name="dimen_pt">3pt</dimen>

    <dimen name="dimen_dp">3dp</dimen>

    </resources>

    6、 Nine-patch(可以拉伸的小图片)

    支持图片的拉伸

    貌似就是所谓的png图片文件资源,图片在应用view的背景时,如果被设为background则会随view的大小变化做相应的拉伸和收缩,像ImageView这类设置src图片则不随view变化,按其自身大小显示部分或全部!

    7、 菜单

    菜单即可以从代码中实现也可以在资源文件中配置,这里就是要描述一下第二种
    <?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/previous" android:title="@string/previous" android:enabled="false" android:icon="@android:drawable/ic_media_previous"/> <item android:id="@+id/play_pause" android:title="@string/play" android:icon="@android:drawable/ic_media_play"/> <item android:id="@+id/next" android:title="@string/next" android:icon="@android:drawable/ic_menu_next"/></menu>8、 Layout布局

    这个就是你经常看到的与用户交互的界面的xml文件,就是各个view的排列和嵌套,没什么好说的啦

    9、 风格和主题、

    风格主要是指view的显示风格 res/values/filename.xml

    <?xml version=”1.0″ encoding=”utf-8″?>
    <resources>
    <style name=”SpecialText” parent=”@style/Text”>
    <item name=”android:textSize”>18sp</item>
    <item name=”android:textColor”>#008</item>
    </style>
    </resources>

    主题主要针对Activity等, 可以在Android Manifest中定义的
    <application><activity>元素将主题添加到整个程序或者某个 Activity,但是主题是不能应用在某一个单独的View里.风格可以自己定义也可以使用程序自带的或是继承已有的风格。

    <?xml version="1.0" encoding="utf-8"?><resources><style name="CustomTheme"><item name="android:windowNoTitle">true</item><item name="windowFrame">@drawable/screen_frame</item><item name="windowBackground">@drawable/screen_background_white</item><item name="panelForegroundColor">#FF000000</item><item name="panelBackgroundColor">#FFFFFFFF</item><item name="panelTextColor">?panelForegroundColor</item><item name="panelTextSize">14</item><item name="menuItemTextColor">?panelTextColor</item><item name="menuItemTextSize">?panelTextSize</item></style></resources>

    10、 动画

    动画资源分为两种,一是实现图片的translate、scale、rotate、alpha四种变化。还可以设置动画的播放特性;另一种是帧动画,逐帧播放设置的资源

    先说一下第一种

    Res/anim/filename.xml
    <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:interpolator="@android:anim/accelerate_interpolator" android:fromXDelta="0" android:toXDelta="200" android:fromYDelta="0" android:toYDelta="180" android:duration="2000" /> <scale android:interpolator="@android:anim/accelerate_interpolator" android:fromXScale="1.0" android:toXScale="2.0" android:fromYScale="1.0" android:toYScale="2.0" android:pivotX="150%" android:pivotY="150%" android:duration="2000" /> <alpha android:fromAlpha="1.0" android:toAlpha="1.0" android:duration="@android:integer/config_mediumAnimTime" /> <rotate ....各个属性></rotate> <Interpolator >可以使用其子类和属性定义动画的运行方式,先快后慢,先慢后快等</Interpolator></set> 具体参数的用法,大家可以自己查资料

    下面是第二种资源

    <animation-list xmlns:android=”http://schemas.android.com/apk/res/android”
    android:oneshot=”true”>
    <item android:drawable=”@drawable/rocket_thrust1″ android:duration=”200″ />
    <item android:drawable=”@drawable/rocket_thrust2″ android:duration=”200″ />
    <item android:drawable=”@drawable/rocket_thrust3″ android:duration=”200″ />
    </animation-list>





    <script src="/javascripts/tinymce/plugins/javaeye/langs/zh.js" type="text/javascript"></script> rif;">1. 相关文件夹介绍 在Android项目文件夹里面,主要的资源文件是放在res文件夹里面的。assets文件夹是存放不进行编译加工的原生文件,即该文件夹里面的文件不会像xml,java文件被预编译,可以存放一些图片,html,js, css等文件。
  • 相关阅读:
    Mayan游戏 (codevs 1136)题解
    虫食算 (codevs 1064)题解
    靶形数独 (codevs 1174)题解
    黑白棋游戏 (codevs 2743)题解
    神经网络 (codevs 1088) 题解
    The Rotation Game (POJ 2286) 题解
    倒水问题 (codevs 1226) 题解
    银河英雄传说 (codevs 1540) 题解
    生日蛋糕 (codevs 1710) 题解
    第一章 1.11 高阶函数
  • 原文地址:https://www.cnblogs.com/myphoebe/p/2314795.html
Copyright © 2011-2022 走看看