您的位置:首页 > 移动开发 > Android开发

android平铺图片

2016-02-02 10:29 246 查看
最近开发App,美工设计了一个有锯齿边沿效果的背景图,只给了我一个锯齿,然后需要平铺展示锯齿效果:



android中实现平铺图片有两种方式:

(1)在drawable中的drawable文件中定义平铺的Bitmap

[code]<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@mipmap/ic_border_cupons_left"
    android:tileMode="repeat"
    >

</bitmap>


(2)在代码中设置

[code]/**
     * 初始化锯齿背景
     * @param holder
     */
    private void initViewBg(ViewHolder holder) {
        // 设置内容区域平铺的小圆角背景
        Bitmap topBitmap = BitmapFactory.decodeResource(mContext.getResources(), R.mipmap.ic_border_cupons_left);
        BitmapDrawable leftDrawable = new BitmapDrawable(mContext.getResources(), topBitmap);
        leftDrawable.setTileModeY(Shader.TileMode.REPEAT);

        Bitmap bottomBitmap = BitmapFactory.decodeResource(mContext.getResources(), R.mipmap.ic_border_cupons);
        BitmapDrawable rightDrawable = new BitmapDrawable(mContext.getResources(), bottomBitmap);
        rightDrawable.setTileModeY(Shader.TileMode.REPEAT);

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
            holder.favourItemBgLeft.setBackground(leftDrawable);
            holder.favourItemBgRight.setBackground(rightDrawable);
        } else {
            holder.favourItemBgLeft.setBackgroundDrawable(leftDrawable);
            holder.favourItemBgRight.setBackgroundDrawable(rightDrawable);
        }

    }


其中第一种在xml文件中设置部分机型可能出现适配问题,所以这里推荐使用代码方式实现对图片的平铺效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: