Android - 计算器支持所有屏幕尺寸
Android - Calculator support all screen sizes
我是 android 应用程序开发的初学者,我遇到了一个找不到任何解决方案的问题。我在 nexus 5 上运行该应用程序,它运行完美,布局之间没有空白,但是当我切换到 nexus 4 时,会发生这种情况(我使用颜色来分隔布局):
如果我切换到像素 xl :
我该怎么做才能让它右边没有任何空格?(下面有 XML 代码,以备不时之需)。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f00">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClickDTB"
android:text="Convert to Binary"
android:textAlignment="center"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold|italic" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#0f0">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="98dp"
android:layout_weight="0.01"
android:fontFamily="serif-monospace"
android:text="Calculator"
android:textAlignment="textEnd"
android:textColor="@android:color/white"
android:textSize="35dp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#f0f"
android:orientation="horizontal">
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#FFA500"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#000FFF"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#8B0000"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#800080"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#2E8B57"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
试试下面的代码
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f00">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClickDTB"
android:text="Convert to Binary"
android:textAlignment="center"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold|italic" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#0f0">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="98dp"
android:layout_weight="0.01"
android:fontFamily="serif-monospace"
android:text="Calculator"
android:textAlignment="textEnd"
android:textColor="@android:color/white"
android:textSize="35dp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f0f"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#FFA500"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#000FFF"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#8B0000"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#800080"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#2E8B57"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
你必须像这样使用重量和重量总和
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f00">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClickDTB"
android:text="Convert to Binary"
android:textAlignment="center"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold|italic" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#0f0">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="98dp"
android:layout_weight="0.01"
android:fontFamily="serif-monospace"
android:text="Calculator"
android:textAlignment="textEnd"
android:textColor="@android:color/white"
android:textSize="35dp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f0f"
android:weightSum="100"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#FFA500"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#000FFF"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="20"
android:background="#8B0000"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#800080"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="20"
android:background="#2E8B57"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
</LinearLayout>
我是 android 应用程序开发的初学者,我遇到了一个找不到任何解决方案的问题。我在 nexus 5 上运行该应用程序,它运行完美,布局之间没有空白,但是当我切换到 nexus 4 时,会发生这种情况(我使用颜色来分隔布局):
如果我切换到像素 xl :
我该怎么做才能让它右边没有任何空格?(下面有 XML 代码,以备不时之需)。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f00">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClickDTB"
android:text="Convert to Binary"
android:textAlignment="center"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold|italic" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#0f0">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="98dp"
android:layout_weight="0.01"
android:fontFamily="serif-monospace"
android:text="Calculator"
android:textAlignment="textEnd"
android:textColor="@android:color/white"
android:textSize="35dp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="#f0f"
android:orientation="horizontal">
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#FFA500"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#000FFF"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#8B0000"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#800080"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="72.4dp"
android:layout_height="match_parent"
android:background="#2E8B57"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
试试下面的代码
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f00">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClickDTB"
android:text="Convert to Binary"
android:textAlignment="center"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold|italic" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#0f0">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="98dp"
android:layout_weight="0.01"
android:fontFamily="serif-monospace"
android:text="Calculator"
android:textAlignment="textEnd"
android:textColor="@android:color/white"
android:textSize="35dp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f0f"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#FFA500"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#000FFF"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#8B0000"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#800080"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="#2E8B57"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
你必须像这样使用重量和重量总和
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:orientation="vertical"
android:weightSum="1">
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#f00">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onClick="onClickDTB"
android:text="Convert to Binary"
android:textAlignment="center"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold|italic" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#0f0">
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="98dp"
android:layout_weight="0.01"
android:fontFamily="serif-monospace"
android:text="Calculator"
android:textAlignment="textEnd"
android:textColor="@android:color/white"
android:textSize="35dp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f0f"
android:weightSum="100"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#FFA500"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#000FFF"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="20"
android:background="#8B0000"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_weight="20"
android:layout_height="match_parent"
android:background="#800080"
android:orientation="vertical">
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="20"
android:background="#2E8B57"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
</LinearLayout>