关于问题,我需要您的帮助。 我正在创建一个应用程序,我有9张要在屏幕上水平显示的图像。 Check this image
但是在上面的屏幕截图中,如您所见,我只有8张图像,并且屏幕似乎已满,我想再添加一张编号为9的图像。 这是我的activity_main.xml(垃圾箱链接)
如果您可以向我解释一些信息,而不只是修复它,那将更有帮助。此外,您是否可以提出其他修复建议,这是我正在研究的大学项目。 谢谢您的宝贵时间:)
答案 0 :(得分:0)
为ImageButton添加另一个属性,使用以下代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/newbackground"
android:orientation="vertical">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="200dp">
<TextView
android:id="@+id/scoreText"
android:layout_width="55dp"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:text="@string/myScore"
android:textColor="@android:color/background_light"
android:textSize="18sp" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="150dp">
<ImageButton
android:id="@+id/number1"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_one" />
<ImageButton
android:id="@+id/number2"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_two" />
<ImageButton
android:id="@+id/number3"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_three" />
<ImageButton
android:id="@+id/number4"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_four" />
<ImageButton
android:id="@+id/number5"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_five" />
<ImageButton
android:id="@+id/number6"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_six" />
<ImageButton
android:id="@+id/number7"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_seven" />
<ImageButton
android:id="@+id/number8"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_eight" />
<ImageButton
android:id="@+id/number9"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:maxWidth="10dp"
android:maxHeight="10dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/image_nine" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/imageView"
android:layout_width="220dp"
android:layout_height="130dp"
android:maxWidth="130dp"
android:maxHeight="130dp"
android:scaleType="fitCenter"
app:srcCompat="@drawable/dice_6" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="130dp"
android:maxWidth="130dp"
android:maxHeight="130dp"
android:scaleType="fitCenter"
android:layout_weight="1"
app:srcCompat="@drawable/dice_6" />
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/rollButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_marginBottom="109dp"
android:background="@color/colorAccent"
android:gravity="center_vertical"
android:text="@string/rollButton"
android:textAlignment="center"
android:textColorLink="@color/colorAccent" />
</RelativeLayout>
</LinearLayout>
答案 1 :(得分:0)
如果图像是固定的,则可以将LinearLayout宽度(包含图像的宽度)设置为“ match_parent”并添加属性weightSum = 9。这将使其宽度与容器相同。然后将每个图像的宽度设置为0并添加weight = 1。 无论设备屏幕的大小如何,这都会使每个图像的宽度为父图像的1/9。
它看起来像是user9209780的答案。