我试图在布局中设置像背景图像的图像(通过xml或代码)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/my_image">
或
View myLayout= findViewById( R.id.main_layout);
myLayout.setBackgroundResource(R.drawable.my_image);
我的问题不是android在全屏幕背景下修复图像,调整大小并修改图像比例。
如何设置图像,图像只占用必要的空间? (没有调整图像大小)
答案 0 :(得分:7)
如果不在布局中添加ImageView
,如果图片小于空格,则可以创建如下所示的xml bitmap resource,并使用此代替原始背景图片:
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/background"
android:gravity="center"
/>
答案 1 :(得分:6)
将LinearLayout放在RelativeLayout中,并将ImageView添加到RelativeLayout。
<RelativeLayout
android:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal" >
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@drawable/my_image" />
<LinearLayout
android:id="@+id/main_layout"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
请注意,ImageView是RelativeLayout中的第一个元素,导致它在后台绘制。通过在ImageView中声明fitXY和adjustViewBounds,可以确保图像保持其比例。您也可以关闭adjustViewBounds并选择另一个scaleType,如fitStart或centerCrop。它们还保持纵横比。
答案 2 :(得分:0)
Jst在LinearLayout中采用另一种布局。
将它称为相对,以便您可以在任何地方保留该布局。 并且在相对布局中你保持imageView。
是的,我认为你想要的......
答案 3 :(得分:0)
“setBackground”调整图像大小以填充视图(LinearLayout) 请在LinearLayout或RelativeLayout中添加ImageView,然后使用setImageResource 来实现此目的。