我是初学者并且正在尝试创建一个计算器。
我无法在单LinearLayout
中对齐3按钮。
我对LinearLayout的calculator.xml的代码是。
<Button
android:id="@+id/btnOne"
android:layout_height="wrap_content"
android:layout_weight="0.32"
android:layout_width="107dp"
android:background="@android:color/darker_gray"
android:text="1" />
<Button
android:id="@+id/btnPlus"
android:layout_height="wrap_content"
android:layout_weight="0.24"
android:layout_width="107dp"
android:text="+" />
<Button
android:id="@+id/btnEquals"
android:layout_width="107dp"
android:layout_height="wrap_content"
android:layout_weight="0.31"
android:text="=" />
</LinearLayout>
如何将3个按钮放在一行?
答案 0 :(得分:0)
你可以试试这个:
<LinearLayout
android:orientation="vertical"
......>
<EditText>
<LinearLayout
android:orientation="horizontal"
......>
<Button .... />
<Button .... />
<Button .... />
</LinearLayout>
</LinearLayout>
答案 1 :(得分:0)
您可以在内部android:orientation="horizontal"
上使用LinearLayout
,因为其他用户说:
<LinearLayout
android:orientation="horizontal"
......>
<Button
DockPanel.
android:id="@+id/btnOne"
android:layout_height="wrap_content"
android:layout_weight="0.32"
android:layout_width="107dp"
android:background="@android:color/darker_gray"
android:text="1" />
<Button
android:id="@+id/btnPlus"
android:layout_height="wrap_content"
android:layout_weight="0.24"
android:layout_width="107dp"
android:text="+" />
<Button
android:id="@+id/btnEquals"
android:layout_width="107dp"
android:layout_height="wrap_content"
android:layout_weight="0.31"
android:text="=" />
</LinearLayout>
或者您可以尝试在StackPanel
Horizontal
方向内插入按钮:
<StackPanel Orientation="Horizontal">
<Button
DockPanel.
android:id="@+id/btnOne"
android:layout_height="wrap_content"
android:layout_weight="0.32"
android:layout_width="107dp"
android:background="@android:color/darker_gray"
android:text="1" />
<Button
android:id="@+id/btnPlus"
android:layout_height="wrap_content"
android:layout_weight="0.24"
android:layout_width="107dp"
android:text="+" />
<Button
android:id="@+id/btnEquals"
android:layout_width="107dp"
android:layout_height="wrap_content"
android:layout_weight="0.31"
android:text="=" />
</StackPanel>
我现在不是在尝试代码,所以请告诉我这是否是一个很好的解决方案。
您也可以使用DockPanel
左右。我建议你在android中阅读关于Layouts
的任何好的教程。这将有助于你理解布局。
答案 2 :(得分:0)
在第一个内部使用第二个LinearLayout。将它放在edittext下面。将其方向设置为水平方向并将所有按钮放入其中。设置按钮以填充父级。将每个按钮的重量更改为1.现在所有三个按钮的大小都相同。
答案 3 :(得分:0)
使用内部线性布局执行此操作:
<LinearLayout
android:orientation="horizontal"
......>
<Button .... />
<Button .... />
<Button .... />
</LinearLayout>