2011-06-20 19 views
1

我刚开始在android上工作..其实我已经创建了一个计算器应用程序.. 我面临的问题是管理布局..我的意思是说..我有四个按钮在一行..现在在下一行我有另外四个按钮,但是当我运行应用程序之间的第一行和第二行之间的空间是安静的大..任何人都可以告诉我如何减少这两行之间的空间。 。如何管理布局在android

我写的代码是

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_weight="1"> 


<TextView 
    android:id="@+id/label" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="Calculator Application"/> 

<EditText 
    android:id="@+id/entry" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:background="@android:drawable/editbox_background" 
    android:layout_below="@id/label"/> 

    <LinearLayout 
      android:orientation="vertical" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1"> 
      <LinearLayout 
        android:orientation="horizontal" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:layout_weight="1"> 
       <Button 
        android:id="@+id/one" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 

        android:layout_alignParentRight="true" 
        android:layout_marginLeft="10dip" 
        android:text="1" /> 
       <Button 
        android:id="@+id/two" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 

        android:layout_alignParentRight="true" 
        android:layout_marginLeft="10dip" 
        android:text="2" /> 
       <Button 
        android:id="@+id/three" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 

        android:layout_alignParentRight="true" 
        android:layout_marginLeft="10dip" 
        android:text="3" /> 
       <Button 
        android:id="@+id/plus" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 

        android:layout_alignParentRight="true" 
        android:layout_marginLeft="10dip" 
        android:text="+" /> 

      </LinearLayout> 
    </LinearLayout> 

    <LinearLayout 
      android:orientation="vertical" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1"> 
      <LinearLayout 
        android:orientation="horizontal" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:layout_weight="1"> 
      <Button 
      android:id="@+id/four" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="4" /> 
      <Button 
      android:id="@+id/five" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="5" /> 
      <Button 
      android:id="@+id/six" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="6" /> 
      <Button 
      android:id="@+id/minus" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="-" /> 
      </LinearLayout> 
    </LinearLayout> 

    <LinearLayout 
      android:orientation="vertical" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1"> 
      <LinearLayout 
        android:orientation="horizontal" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:layout_weight="1"> 
      <Button 
      android:id="@+id/seven" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="7" /> 
      <Button 
      android:id="@+id/eight" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="8" /> 
      <Button 
      android:id="@+id/nine" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="9" /> 
      <Button 
      android:id="@+id/multiply" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="*" /> 
      </LinearLayout> 
    </LinearLayout> 

    <LinearLayout 
      android:orientation="vertical" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:layout_weight="1"> 
      <LinearLayout 
        android:orientation="horizontal" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:layout_weight="1"> 
      <Button 
      android:id="@+id/zero" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="0" /> 
      <Button 
      android:id="@+id/clr" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="c" /> 
      <Button 
      android:id="@+id/equal" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="=" /> 
      <Button 
      android:id="@+id/divide" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 

      android:layout_alignParentRight="true" 
      android:layout_marginLeft="10dip" 
      android:text="/" /> 
      </LinearLayout> 
    </LinearLayout> 

问候 Anshuman

回答

2

替换人L时
android:layout_height="fill_parent"调用到
android:layout_height="wrap_content"
(除了父布局,这应该是fill_parent
我已经验证了这个工程。

编辑:为了使按钮水平填满屏幕,(和所有是同等大小),将它添加到每个按钮:

android:layout_width="0dp" 
android:layout_weight="1" 
+0

yeh CaspNZ它的工作..但按钮的大小不一样..有些变得很大..有些小...我如何管理相同大小的每个按钮的大小... moreover我想要编辑文本框和所有的按钮被包装在一个容器中。 – AndroidDev

+0

请参阅上面的修复。我不确定你的意思是“所有的按钮被包裹在一个容器中” - 它看起来像已经是... –

+0

谢谢CaspNZ ...它现在一切正常.. – AndroidDev

0
+0

是的,你完全正确地使用Gridview,因为Anshuman有一个计算器类型的应用程序,它有固定数量的按钮,所以它最好使用Gridview。是的,如果您仍想使用LinearLayout,那么使用相对布局是因为它需要较少的时间来加载。 –

+0

感谢它的所有现在的工作 – AndroidDev

0

由于CaspNZ建议使用android:layout_height="wrap_content"也使用top padding可能会有帮助。

+0

感谢它现在的工作 – AndroidDev

+0

您能否请我们更新解决方案? – xyz