zoukankan      html  css  js  c++  java
  • Android-自己定义图像资源的使用(1)

    Android-自己定义图像资源的使用


    2014年4月28日 周一 天气晴朗 心情平静

    本篇博文给大家介绍一下,在Android开发中经经常使用到的一些图像资源,具体内容麻烦请各位认真查看官网,下面附上一个链接:http://developer.android.com/guide/topics/resources/drawable-resource.html,本篇博客主要给出使用演示样例,让童鞋们对这些图像资源有个直观的了解。
    有兴趣的朋友能够加本人创建的群,里面有丰富的学习资源哦:299402133(移动开发狂热者群)
    Android中有下面几种图像资源:
    • 普通图像资源
    • XML图像资源
    • Nine-patch图像资源
    • XML Nine-patch图像资源
    • 图层(Layer)图像资源
    • 图像状态(state)资源
    • 图像级别(Level)资源
    • 淡入淡出(transition)资源
    • 嵌入(Inset)图像资源
    • 剪切(Clip)图像资源
    • 比例(Scale)图像资源
    • 外形(Shape)图像资源
    好,上面就是提供的一些图像资源了,我们能够自己定义这些图像资源供给我们程序使用,让我们的程序更加好看。下面小巫花点时间逐个给大家介绍一下这些图像资源的用法:

    普通图像资源的使用

    普通图像资源就仅仅是应用一张图片而已,不须要自己定义例如以下:
    /05_KindOfDrawableUse/res/layout/simple_res.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" >
    
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/logo" />
    
    </LinearLayout>

    效果图:
    那张图片是小巫公司的logo,http://www.teamtopgame.com/,这是官网,喜欢玩网游的童鞋这个能够玩一下。

    xml图像资源的使用

    这个图像资源是使用<bitmap>标签的,这个标签下有非常多属性,例如以下:
    <?xml version="1.0" encoding="utf-8"?>
    <bitmap
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@[package:]drawable/drawable_resource"
        android:antialias=["true" | "false"]
        android:dither=["true" | "false"]
        android:filter=["true" | "false"]
        android:gravity=["top" | "bottom" | "left" | "right" | "center_vertical" |
                          "fill_vertical" | "center_horizontal" | "fill_horizontal" |
                          "center" | "fill" | "clip_vertical" | "clip_horizontal"]
        android:mipMap=["true" | "false"]
        android:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] />

    这里我不会给大家一个个介绍是什么意思,希望童鞋们自己去官网查看。
    /05_KindOfDrawableUse/res/layout/xml_res.xml
    <?xml version="1.0" encoding="utf-8"?>
    <bitmap xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@drawable/logo"
        android:tileMode="repeat" >
    
    </bitmap>

    这里用到一张图片,设置平铺模式为反复:




    Nine-patch 图像资源的使用(重要)

    .9图片老生常谈了,做Android开发的没用过这个工具那就太说只是去的,我们在应用开发其中,时刻须要对图片进行处理,为了让图片被拉伸的时候不会变形和扭曲,让图片边缘部分过渡得更加平滑自然。这就是draw9patch.bat这个工具的作用。
    D:softwareadt-bundle-windows-x86_64-20131030sdk ools
    在SDK中的tools文件夹下,就有Android提供的各种工具,童鞋们自己学着去使用吧,这个工具的使用这里小巫就不解说了,须要学习的能够參考其它博主写的博文,百度、Google常伴你左右。
    /05_KindOfDrawableUse/res/layout/ninepatch_res.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" >
    
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/res" />
    
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/res" />
    
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/nine_patch" />
    
    </LinearLayout>
    效果图例如以下:



    XML Nine-Patch 图像资源的使用

    这个资源,小巫没怎么用过,具体用法:
    在drawable文件夹下,定义下面资源
    /05_KindOfDrawableUse/res/drawable/xml_ninepatch.xml
    <?xml version="1.0" encoding="utf-8"?>
    <nine-patch xmlns:android="http://schemas.android.com/apk/res/android"
        android:dither="false"
        android:src="@drawable/nine_patch" >
    
    </nine-patch>
    这个资源的src是一张.9图片,不能使用普通的图片,不然会报错的哦。

    在布局文件里使用:
    /05_KindOfDrawableUse/res/layout/xml_ninepatch_res.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" >
    
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/xml_ninepatch" />
    
    </LinearLayout>

    效果图例如以下:


    图层资源的使用

    图层资源非常easy理解,就相似FrameLayout,我们知道帧布局都是一层一层往上覆盖的,对吧。图层资源也是这样子滴,在drawable文件夹下,定义下面资源:
    /05_KindOfDrawableUse/res/drawable/layers.xml
    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <item>
            <bitmap
                android:gravity="center"
                android:src="@drawable/logo" />
        </item>
        <item
            android:left="10dp"
            android:top="10dp">
            <bitmap
                android:gravity="center"
                android:src="@drawable/logo" />
        </item>
        <item
            android:left="20dp"
            android:top="20dp">
            <bitmap
                android:gravity="center"
                android:src="@drawable/logo" />
        </item>
    
    </layer-list>

    /05_KindOfDrawableUse/res/layout/layer_res.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" >
    
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/layers" />
    
    </LinearLayout>

    效果图例如以下:


    本篇博客就介绍这几种图像资源,下篇博客继续介绍,不想让各位一口吃掉一个胖子。




  • 相关阅读:
    【转载】WinCE编译一二三
    Implement the OEM Power Management on Windows CE
    ubuntu 精简系统
    simple awk tutorial
    debian 安装备份已安装软件包
    awk 简单教程
    Unix Sed Tutorial: Advanced Sed Substitution Examples
    dos修改子文件夹所有文件文件名
    Using Intel MKL with MATLAB Matlab使用多核CPU
    [转]学校的统一订书80%该烧掉——IT推荐书单
  • 原文地址:https://www.cnblogs.com/hrhguanli/p/3824807.html
Copyright © 2011-2022 走看看