wrap_content不适用于后台

时间:2017-08-03 12:14:44

标签: android xml android-layout

有Frame Layout,其中width \ _tight = wrap_content。但是当我尝试设置背景时它会增加到最大尺寸,即使它不包含任何元素。如何解决它?

<FrameLayout
    xmlns:android="schemas.android.com/apk/res/android"; 
   xmlns:app="schemas.android.com/apk/res-auto"; 
   android:background="@drawable/oblakol" 
   adroid:layout_width="wrap_content" 
   android:layout_height="wrap_content" 
   android:layout_alignParentTop="true" 
   android:layout_centerInParent="true" > 
    <TextView 
      android:id="@+id/textView8" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content"
      android:text="TextView" />
 </FrameLayout>

4 个答案:

答案 0 :(得分:2)

你的背景比你想象的要大得多。检查背景大小!

答案 1 :(得分:0)

换行内容正在运行,但您的图片尺寸很大,因此您无法获得预期效果。 尝试将图片导入为 - &gt;图像资产所以大小将自动调整 要么 手动设置大小!

答案 2 :(得分:0)

我希望这会对你有帮助......

wrap_content会将其背景设为原始大小。

使用大分辨率会导致您的应用在使用时滞后。因此,您应根据需要调整背景大小:Image Resizer

答案 3 :(得分:0)

当您将视图的尺寸(layout_width或layout_height)设置为WRAP_CONTENT时,您可以自由地展开视图而不受任何限制(根据其内容)。与您的场景相同,因为您已为帧布局设置WRAP_CONTENT的高度和宽度。

因此无论屏幕上占用的空间如何,都是由于 android:background =“@ drawable / oblakol”可绘制图像的大尺寸。尝试将Frame Layout的高度和宽度设置为一些随机值以进行测试。

android:layout_width="250dp"
android:layout_height="250dp"

我附上了一些截图供您参考。

  1. android:layout_width和android:layout_height设置为WRAP_CONTENT。 android Image的实际尺寸为800x799(wxh)
  2. enter image description here

    1. android:layout_width和android:layout_height设置为WRAP_CONTENT。 android Image的实际尺寸为256x256(wxh)
    2. enter image description here

      1. android:layout_width和android:layout_height设置为250dp。 android Image的实际尺寸为800x799(wxh)

        enter image description here

      2. 希望它有所帮助。