android - android studio 尺寸问题
问题描述
我的活动中有按钮,它们在编辑器中的大小正确,但是当我在设备上安装应用程序时,大小不正确。
截图
Editor
Device
代码
xml file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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/bg2"
tools:context=".MainActivity">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:titleTextColor="@color/White" />
<LinearLayout
android:id="@+id/itemButtons"
android:layout_width="match_parent"
android:layout_height="326dp"
android:layout_alignTop="@+id/toolbar"
android:layout_alignBottom="@+id/adView"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="60dp"
android:layout_marginBottom="405dp"
android:gravity="center"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginEnd="4sp"
android:gravity="center"
android:orientation="horizontal"
android:weightSum="2">
<Button
android:id="@+id/button"
android:layout_width="151dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginEnd="4dp"
android:background="#76FF03"
android:text="@string/alphabetButton"
android:textColor="#000000" />
<Button
android:id="@+id/button2"
android:layout_width="151dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="#2196F3"
android:text="@string/numberButton"
android:textColor="#000000" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginTop="7dp"
android:layout_marginEnd="4sp"
android:gravity="center"
android:orientation="horizontal"
android:weightSum="2">
<Button
android:id="@+id/button3"
android:layout_width="151dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginEnd="4dp"
android:background="#651FFF"
android:text="@string/colorsButton"
android:textColor="#000000" />
<Button
android:id="@+id/button4"
android:layout_width="151dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="#FFEA00"
android:text="@string/shapes"
android:textColor="#000000" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginTop="7dp"
android:layout_marginEnd="4sp"
android:gravity="center"
android:orientation="horizontal"
android:weightSum="2">
<Button
android:id="@+id/button5"
android:layout_width="151dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginEnd="4dp"
android:background="#FF5252"
android:text="@string/bodyParts"
android:textColor="#000000" />
<Button
android:id="@+id/button6"
android:layout_width="151dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="#C6FF00"
android:text="@string/furnitures"
android:textColor="#000000" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="15dp"
android:layout_marginTop="7dp"
android:layout_marginEnd="4sp"
android:gravity="center"
android:orientation="horizontal"
android:weightSum="2">
<Button
android:id="@+id/button7"
android:layout_width="151dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="#1DE9B6"
android:text="@string/cityParts"
android:textColor="#000000" />
</LinearLayout>
</LinearLayout>
</RelativeLayout>
任何想法?
解决方案
您正在为按钮提供固定大小,为按钮赋予权重并将宽度设置为零,它将是响应式的
<Button
android:id="@+id/button7"
android:layout_width="0dp"
android:layout_weight="1"/>
推荐阅读
- android - 如何允许两个异步任务同时阻塞对方但不阻塞主线程
- flutter - Flutter:如何创建一个只有一个班级成员的新列表?
- java - Model类和DAO类的区别
- json - 一次将多个 Json 文件导入 Mongodb
- python-3.x - 通过python请求获取403禁止状态
- tomcat - 如何在tomcat中将springboot和camel应用部署为war文件并执行
- python - Matplotlib,图例符号之间的垂直空间
- flutter - 如何在颤动中触发警报时显示小部件
- ruby - 如何转换 ruby 格式的 whatsapp?
- javascript - 如何从jquery中给定的对象数组中打印用户名