如何将活动的布局背景宽度设置为100%

时间:2015-01-13 06:49:39

标签: java android

我正在使用此代码将设备背景作为我的活动布局的背景。

final WallpaperManager wallpaperManager = WallpaperManager.getInstance(this);
final Drawable wallpaperDrawable = wallpaperManager.getDrawable();

MyHome = (GridView) findViewById(R.id.gridView1);
MyHome.setBackgroundDrawable(wallpaperDrawable);

但是我希望背景的宽度与设备主题中的宽度相同,如此图所示enter image description here第一张图片是我的活动,第二张图片是我的手机屏幕锁定。我如何实现这个目标?

3 个答案:

答案 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>

我希望这个帮助