2011-06-20 49 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