Android开发中layerdrawable的使用示例

来源:爱站网时间:2020-08-13编辑:网友分享
Android可以将绘图对象抽象为drawable,不同的图形和图像表示不同的类型,而Android框架提供了一些特定的实现,本文是爱站技术频道小编为大家带来的Android开发中layerdrawable的使用示例,一起进入下文看看吧!

Android可以将绘图对象抽象为drawable,不同的图形和图像表示不同的类型,而Android框架提供了一些特定的实现,本文是爱站技术频道小编为大家带来的Android开发中layerdrawable的使用示例,一起进入下文看看吧!

1.在Android项目开发的时候,经常看到很漂亮的UI界面,比如,当你点击一张图片被选中的时候,覆上一张透明的图片。表示被选中,区别与那些没有被选中的。这种是如何实现的呢?答案是LayerDrawable的使用出现的效果。下面是LayerDrawable的总结,若有不正确的地方,请大家指正。

2.简单的来说,LayerDrawable继承与Drawable,Drawable就是一个可画的对象,可能是一张位图BitmapDrawable,也可能是一个图形ShapeDrawable,还有可能是一个图层LayerDrawable。根据不同的画图需求创建相应的可画对象。

LayerDrawable系统将会按这些Drawable对象的数组顺序来绘制它们,索引最大的Drawable对象将会被绘制在最上面,定义LayerDrawable对象的XML文件的根元素layer-list ,该元素可以包含多个item元素。

3.代码实现如下:

方法一:XML方式:

 


 

   
                    android:gravity="center"
            android:src="@drawable/ic_03" />
   

            android:left="25dp"
        android:top="25dp">
                    android:gravity="center"
            android:src="@drawable/ic_03" />
   
            android:left="50dp"
        android:top="50dp">
                    android:gravity="center"
            android:src="@drawable/ic_03" />
   

 

方法二:代码方式:MainActivity.java类:

 

package com.scd.layerdrawabledemo;

 

import android.app.Activity;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.LayerDrawable;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ImageView;

public class MainActivity extends Activity {
    private ImageView mView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mView = (ImageView) findViewById(R.id.imageView1);
        // 创建资源对象
        Resources resources = getResources();
        // 创建数组对象
        Drawable[] layers = new Drawable[2];
        layers[0] = resources.getDrawable(R.drawable.ic_01);
        layers[1] = resources.getDrawable(R.drawable.ic_02);

        LayerDrawable layerDrawable = new LayerDrawable(layers);
        // 设置背景
        mView.setImageDrawable(layerDrawable);

    }
}

以上就是爱站技术频道小编给大家介绍的Android开发中layerdrawable的使用示例,这个问题我们今天就和大家谈论到这里,希望能帮到大家。

上一篇:Android服务重启的方法

下一篇:Android listview自定义适配器实现QQ类接口

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载