我在 2x2 网格中有一个带有 4 个 ImageButton 的屏幕(使用 TableLayout)。
我需要支持所有不同的屏幕尺寸。所以我创建了 4 个布局文件夹(小、中、大和特大)。
它适用于 ImageButton 的位置。但是在大屏幕和超大屏幕上,ImageButton 的尺寸太小了。
我尝试使用 mdpi 和其他文件夹之间的 x0.75、x1、x1.5 和 x2 关系使用 4 个不同密度的文件夹(drawable-ldpi、drawable-mdpi、drawable-hdpi 和 drawable-xhdpi)来解决这个问题.
但我认为这不起作用或不是解决此问题的正确方法。
这是正确的解决方法吗?
我担心小屏幕但密度高。或低密度的中等屏幕。在那些情况下可能不起作用,对吧?
我的另一个想法是在每个大小文件夹的每个布局上强制 ImageButton 的大小(以倾角测量)。这是更好的解决方法吗?
我真的输了。我想应用最佳/正确的解决方案。
有人可以帮助我吗?
感谢并为我糟糕的英语感到抱歉
更新:
这是布局:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:gravity="center_horizontal">
<TableRow
android:gravity="center"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_marginTop="60dip" >
<ImageButton
android:id="@+id/newCard_button"
android:layout_margin="10dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_new_card_button"/>
<ImageButton
android:id="@+id/showLastTicket_button"
android:layout_margin="10dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_show_last_ticket_button"/>
</TableRow>
<TableRow
android:gravity="center"
android:layout_height="fill_parent"
android:layout_width="fill_parent">
<ImageButton
android:id="@+id/cancelLastTransaction_button"
android:layout_margin="10dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_anulla_button"/>
<ImageButton
android:id="@+id/searchCustomer_button"
android:layout_margin="10dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/selector_search_customer_button"/>
</TableRow>
</TableLayout>