zoukankan      html  css  js  c++  java
  • Android资源之图像资源(图层图像资源)

    曾经看别人的程序的drawable目录里有xml资源,说实话第一次见到这种xml图像资源时,我真心不知道是干什么的。抽出时间学习了一下图像资源。才了解了这类图像资源的妙用。

    以下我来分享一下这部分知识:

    Android 中的图像资源文件保存在res/drawable文件夹中。

    在图像资源文件夹中不仅能够存储各种格式(jpg,png,gif等)的图像文件,还能够使用各种XML格式的图像资源来控制图像的状态 和行为。

    1、普通图像资源

    Android支持3种图像格式:png、jpg和gif。

    官方推荐使用png格式的图像资源,jpg也能够考虑使用。但gif格式的图像文件并不鼓舞使用,由于眼下Android SDK并不支持动画gif。

    普通图像资源的使用比較简单,故在此我就只是多讲述。

    本文主要还是讲述Android中XML图像资源。

    2、XML图像资源

    XML图像资源实际上就是在XML文件里指定drawable文件夹中的图像资源。XML图像资源使用<bitmap>标签定义。

    以下举一例大家看一下:

    在一个drawable目录下新建一个XML图像资源文件,文件名称bitmap_test.xml。代码例如以下:

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

    > <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/ic_launcher" android:tileMode="mirror" />


    以下看一下怎样怎么在java代码中引用这个XML图像资源文件。代码例如以下:
    Resources res=getResources();
    		Drawable drawable=res.getDrawable(R.drawable.bitmap_test);
    		TextView txt=(TextView)findViewById(R.id.textView);
    		txt.setBackground(drawable);
    当然。引用这个XML图像资源也能够依照在XML文件引用普通图像资源那样,引用该bitmap_test.xml图像资源,在此就不多说了。

    2.1、图层(Layer)资源

    图层资源有些类似于布局中的<FrameLayout>。所不同的是<FrameLayout>标签中能够包括随意的控件,而图层资源中的每一层仅仅能包括图像。

    定义图层资源必须使用<layer-list>标签作为资源文件的根节点,<layer-list>标签中能够包括多个<item>标签,每个<item>标签表示一个图像,最后一个<item>标签会显示在最顶层。以下的代码使用<item>指定了一个图像。

    <item android:drawable="@drawable/image">

    默认情况下,图像会尽量充满显示图像的视图。因此。显示的图像可能会被拉伸。

    为了避免图像拉伸,能够在<item>标签中使用<bitmap>标签引用图像。

    以下来看一个图层资源的样例

    图层资源文件layer_test.xml代码例如以下所看到的:

    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
        <item android:top="20dp" android:left="20dp">
            <bitmap android:src="@drawable/qrcode"
                android:gravity="center"/>
        </item>
        <item android:top="20dp" android:left="20dp">
            <bitmap android:src="@drawable/desktoplog"
                
                
                android:gravity="center"/>
        </item>
    
    </layer-list>
    

    在XML布局文件里引用该图层资源,例如以下所看到的:

     <ImageView 
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:src="@drawable/layer_test"
            />


    该图层资源案例的效果如图1-2所看到的:


    图1-2图层资源案例演示效果

    如无特殊情况建议使用图层来实现多个图像重合的效果。

    因为时间的问题。Android资源之图像资源我就先说到这里。明天毕业答辩之后,再把剩余的内容补上。

    转载请注明出处:http://blog.csdn.net/android_jiangjun/article/details/30789545



  • 相关阅读:
    android studio中timber的配置
    bufferknife框架的正确使用方式 -终于他么知道了
    开源的图像滤镜库----for Android
    HSV做通道分离是出现的Vector内存越界错误
    HSV与RGB的相互转换的公式
    Windows下python的第三方库的安装
    Python出现"Non-ASCII character 'xe6' in file"错误解决方法
    Verilog的IDE Quartus II
    Java-ZipUtil工具类
    Java-JDBCUtil工具类
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5067182.html
Copyright © 2011-2022 走看看