我正在使用此代码将设备背景作为我的活动布局的背景。
final WallpaperManager wallpaperManager = WallpaperManager.getInstance(this);
final Drawable wallpaperDrawable = wallpaperManager.getDrawable();
MyHome = (GridView) findViewById(R.id.gridView1);
MyHome.setBackgroundDrawable(wallpaperDrawable);
但是我希望背景的宽度与设备主题中的宽度相同,如此图所示第一张图片是我的活动,第二张图片是我的手机屏幕锁定。我如何实现这个目标?
答案 0 :(得分:0)
您无法将scaleType
应用于背景图片。相反,您可以更改布局以包含ImageView作为背景,并将其他元素作为前景。
例如,
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/the_man_in_the_coat_image"
android:scaleType="fitCenter" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<!-- ADD YOUR OTHER ELEMENTS -->
</LinearLayout>
</FrameLayout>
答案 1 :(得分:0)
尝试将比例缩放到中心裁剪。也许这会对你有用
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/my_image"
android:scaleType="fitCenter" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</LinearLayout>
</FrameLayout>
答案 2 :(得分:0)
也许你应该尝试将缩放比例作为中心作物。也许这会对你有用
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</LinearLayout>
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/image"
android:scaleType="fitCenter" />
</FrameLayout>
我希望这个帮助