在布局上,我想将背景图像(保持其纵横比)缩放到创建页面时分配的空间.任何人都知道如何做到这一点?
我正在使用layout.setBackgroundDrawable()并使用BitmapDrawable来setGravity进行剪切和填充,但是没有看到任何缩放选项.
如何让LinearLayout(或任何其他ViewGroup)假设其子视图的大小而不是假设背景图像的大小?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/large_image300x300pix">
<TextView android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello world!"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
线性布局与背景图像的大小相同.如何让我的线性布局与textview具有相同的大小?
我需要做的是让背景图像填充按钮的自然大小,因为没有指定背景并显示默认的灰色背景图像.但相反,我的按钮会缩放到背景图像的大小而不是文本.
之前有一个问题,但没有人有解决方案.
按钮:

<Button
android:id="@+id/morebtn"
style="@style/CustomButton"
android:text="More" />
Run Code Online (Sandbox Code Playgroud)
我有这个自定义按钮样式(greybutton是一个9补丁):
<resources>
<style name="CustomButton" parent="@android:style/TextAppearance">
<item name="android:textColor">#FFFFFF</item>
<item name="android:layout_marginLeft">10dip</item>
<item name="android:layout_marginRight">10dip</item>
<item name="android:layout_marginBottom">10dip</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_centerInParent">true</item>
<item name="android:background">@drawable/greybutton</item>
<item name="android:textSize">20sp</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
现在它尽管被告知wrap_content,但它会在宽度方向上填满屏幕.当我从Button样式中删除android:background时,按钮缩小以按预期包装文本.
有谁知道为什么我的背景图像不像默认的按钮背景?