Android LayerDrawable使用实例_安卓软件开发教程-查字典教程网
Android LayerDrawable使用实例
Android LayerDrawable使用实例
发布时间:2016-12-28 来源:查字典编辑
摘要:1.在Android项目开发的时候,经常看到很漂亮的UI界面,比如,当你点击一张图片被选中的时候,覆上一张透明的图片。表示被选中,区别与那些...

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

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

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

3.代码实现如下:

方法一:XML方式:

复制代码 代码如下:

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

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

<item>

<bitmap

android:gravity="center"

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

</item>

<item

android:left="25dp"

android:top="25dp">

<bitmap

android:gravity="center"

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

</item>

<item

android:left="50dp"

android:top="50dp">

<bitmap

android:gravity="center"

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

</item>

</layer-list>

方法二:代码方式: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);

}

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新安卓软件开发学习
    热门安卓软件开发学习
    编程开发子分类