我已经查看了有关此主题的先前问题,但似乎没有一个有效。我有一个水平方向的线性布局,其中有两个(应该是)完美的方形 ImageButton。线性布局成功地跨越了屏幕的宽度,并且 ImageButtons 的宽度是完美的;但是,它们的渲染高度是应有的高度的两倍。我已经尝试使用 fitStart 和 fitEnd 以及 fitXY 的 scaleTypes 并且它们仍然呈现相同 - 就好像他们看到父级的宽度并使用它来计算它们的缩放高度而不考虑其他对象的宽度一样在线性布局中。所以我最终得到了两个 2:1 纵横比按钮,并使用以下代码:
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:scaleY="1"
android:orientation="horizontal"
>
<ImageButton
android:id="@+id/button2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/tapdat_tap2"
android:scaleType="fitXY"/>
<ImageButton
android:id="@+id/button3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginRight="0dp"
android:layout_weight="1"
android:background="@drawable/tapdat_nottap"
android:scaleType="fitXY"/>
</LinearLayout>
此外,我尝试在线性布局标签中放置一个 scaleY=".5" 并以正确的高度呈现,但是它留下了大量不可用的空间,其中多余的高度被切除,其他内容无法填充。(我也尝试将这个 scaleY 单独放在 ImageButtons 上,结果相同。)