【问题标题】:Different buttons size不同的按钮大小
【发布时间】:2015-03-11 06:55:49
【问题描述】:

我对 Android 还是很陌生,当我将应用部署到智能手机时,尺寸会有所不同。

截图如下:

Android Studio 预览版:

智能手机截图:

请注意“/”按钮比其他按钮小。

问题来了:

android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"

这个填充正在截断我的最后一个按钮,但是为什么android没有在所有按钮之间划分屏幕空间,考虑到最后一个按钮没有真正被截断,我们可以看到“/”集中。

那么我怎样才能让我的按钮适应屏幕呢?

我差点忘了,这是我的代码:

<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:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

    <TextView
        android:text=""
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/txtResultado" />

    <EditText
        android:id="@+id/txtNumero1"
        android:paddingTop="25dp"
        android:inputType="number"
        android:hint="Digite"
        android:layout_gravity="center_horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

   <!-- <EditText
        android:id="@+id/txtNumero2"
        android:inputType="number"
        android:hint="Digite"
        android:layout_gravity="center_horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />-->

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

            <Button
            android:id="@+id/btnSoma"
            android:text="+"
            android:layout_gravity="center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="somar"/>

            <Button
            android:id="@+id/btnSubtrair"
            android:text="-"
            android:layout_gravity="center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="subtrair"/>

            <Button
            android:id="@+id/btnMultiplicar"
            android:text="*"
            android:layout_gravity="center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="multiplicar"/>

            <Button
            android:id="@+id/btnDividir"
            android:text="/"
            android:layout_gravity="center_horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="dividir" />

        </LinearLayout>


    <Button
        android:id="@+id/btnResultado"
        android:text="="
        android:layout_gravity="center_horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="resultado" />

</LinearLayout>

【问题讨论】:

    标签: android android-layout button android-linearlayout


    【解决方案1】:

    将此行添加到包含按钮的第二个 LinearLayout

    android:weightSum="4"
    

    然后将这行添加到每个按钮:

     android:layout_weight="1"
    

    这些线将您的 Linearlayout 分成 4 个相等的部分。并且每个按钮都填充了linearLayout的部分。

    【讨论】:

    • @guisantogui 不需要android:weightSum="4"
    • @Vikram 没有android:weightSum="4" 也可以工作,感谢您的改进
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-19
    • 2011-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-31
    相关资源
    最近更新 更多