如何在Android中将drawable设置为位图?

时间:2018-11-24 06:10:31

标签: android xml android-studio android-layout drawable

我正在尝试在可绘制形状的顶部设置一个重复图像,但遇到了麻烦。我知道这个问题已经被问过无数次了,但我仍在努力找出第一步!

我是android的新手,所以我还在学习。

我设法在左上角设置了一个小图标,但这显然是行不通的,此处使用此代码-

render() {
        const { showChild } = this.state;

        const renderChilds = () => {
            switch(showChild) {
                case 1:
                    return <AddCarousel />;
                case 2:
                    return <AddClass />;
                default:
                    return <div />;
            }
        };

        return (
            <section className="Admin-add-video">
                <div className="row">
                    <div className = "col-3 set-padding">
                        < NestedList loadComponents={this.loadComponents} />
                    </div >
                    <div className = "col-9 set-ht" >
                        {renderChilds()}
                    </div>
                </div>
            </section>
        );
    }

enter image description here

我已经在这里检查了问题,并且都显示了

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">


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

  <item android:drawable="@drawable/ic_asset_4"
        android:tileMode="repeat"
        android:left="5dp"
        android:right="5dp"
        android:top="5dp"
        android:bottom="5dp"
        android:gravity="top|left"/>

</layer-list>

现在,当我执行此操作时,预览随之出现-

enter image description here

所以,我想我在这里错过了一步。我要在背景上重复的图标是我在photoshop中创建的SVG图像,然后通过可绘制文件夹中的新矢量图像资源添加了该图像。

1 个答案:

答案 0 :(得分:0)

  

不允许将Vector Drawable用作位图drawable的源。

您可以检查google's issuetracker here中发布的问题。

因此,您必须使用.png,.jpeg或.jpg文件而不是矢量图标,才能在布局中显示重复的图像。