如何在不影响尺寸的情况下在视图上设置背景?

时间:2011-11-20 13:27:54

标签: java android

我想使用平铺背景为现有布局提供纹理。所以我创建了一个这样的drawable:

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/green-linen"
    android:tileMode="repeat" >
</bitmap>

“green-linen.jpg”是我想要使用的800x800纹理。然后我想在布局上使用它我设置背景指向这个。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="wrap_content"
    android:gravity="center_vertical|center_horizontal"
    android:orientation="vertical" android:background="@drawable/background">

问题是现在布局认为它需要800x800才能适应破坏设计的模式。有没有办法设置背景但不影响现有布局? B计划可能是编写一个自定义的绘图程序,但它可能比仅仅设置页面样式或设置可绘制程序更有效,效率更低。

1 个答案:

答案 0 :(得分:0)

如果使用'wrap_content'作为布局参数,setBackground命令将仅影响视图的大小。如果您希望视图具有固定大小,请将该大小指定为布局参数,然后更改背景不会影响视图大小。