我查看了类似的问题并使用了它的答案,但是如果我将它们组合成1 TextView
并放置android:drawableTop=
它显示出非常奇怪的地方,因为我现在它只是堆叠图像文本的顶部是我想要的。
原始
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Navigation" >
<ImageView
android:id="@+id/logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:contentDescription="@string/logo_name"
android:src="@drawable/generic_logo" />
<TextView
android:id="@+id/about"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/about"
android:textSize="55sp"
android:onClick="onClick"
android:clickable="true" />
</LinearLayout>
使用复合
<TextView
android:id="@+id/about"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/about"
android:textSize="55sp"
android:onClick="onClick"
android:clickable="true"
android:drawableTop="@drawable/generic_logo" />
</LinearLayout>
“化合物”将图像拉伸到我模拟的android的参数之外。我怎样才能解决这个问题并摆脱警告呢?
答案 0 :(得分:2)
因此,就测量和布局而言,这两者实际上做的完全不同。首先是弄清楚图像需要多少空间,把它放在那里,弄清楚文本需要多少空间,然后把它放在图像下面。
第二个是弄清楚文本需要多少空间。然后将图像绘制在背景的顶部,对其进行缩放以适合文本使用的整个空间。然后它在上面绘制文本。
如果您想要拉伸图像,请使用第一个版本。第二个版本是错的。复合绘图用于9个补丁,其中单个背景图像被分成几部分。
如果这些都没有做到你真正想要的,那么解释一下是什么,我们会看看我们是否可以弄清楚如何去做。