2014-07-14 3 views
-1

계산기 앱을 개발하려고합니다.인터페이스 레이아웃에서 동적 구성 요소를 만드는 방법

앱이 이미 완료되어 성공적으로 실행할 수는 있지만 앱은 화면 절반 만 활용할 수 있습니다. 내 앱에서 사용 가능한 공간을 모두 사용하기를 원합니다.

XML 레이아웃 첫째

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" > 
     <EditText 
      android:id="@+id/txtDisplay" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" > 
     </EditText> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:orientation="horizontal" > 
     <Button 
      android:id="@+id/btnSatu" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="3" 
      android:gravity="center_horizontal" 
      android:text="1" > 
     </Button> 
     <Button 
      android:id="@+id/btnDua" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="3" 
      android:gravity="center_horizontal" 
      android:text="2" > 
     </Button> 
     <Button 
      android:id="@+id/btnTiga" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="3" 
      android:gravity="center_horizontal" 
      android:text="3" > 
     </Button> 
     <Button 
      android:id="@+id/btnBagi" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="3" 
      android:gravity="center_horizontal" 
      android:text=":" > 
     </Button> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:orientation="horizontal" > 
     <Button 
      android:id="@+id/btnEmpat" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="4" > 
     </Button> 
     <Button 
      android:id="@+id/btnLima" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="5" > 
     </Button> 
     <Button 
      android:id="@+id/btnEnam" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="6" > 
     </Button> 
     <Button 
      android:id="@+id/btnKali" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="x" > 
     </Button> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:orientation="horizontal" > 
     <Button 
      android:id="@+id/btnTujuh" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="7" > 
     </Button> 
     <Button 
      android:id="@+id/btnDelapan" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="8" > 
     </Button> 
     <Button 
      android:id="@+id/btnSembilan" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="9" > 
     </Button> 
     <Button 
      android:id="@+id/btnTambah" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="+" > 
     </Button> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:orientation="horizontal" > 
     <Button 
      android:id="@+id/btnNol" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="0" > 
     </Button> 
     <Button 
      android:id="@+id/btnSamadengan" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="=" > 
     </Button> 
     <Button 
      android:id="@+id/btnReset" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="C" > 
     </Button> 
     <Button 
      android:id="@+id/btnKurang" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:text="-" > 
     </Button> 
    </LinearLayout> 

</LinearLayout> 
+1

하면 로이드 '로 변경 시도 : layout_height = "fill_parent"'(또는 fill_parent'가 사용되지''로 match_parent' 등) 제의 'LinearLayout'. –

답변

0

, 화면을 채우기 위해 Layout 당신의 가장 바깥 쪽을 원한다, 당신은 layout_widthlayout_height 모두 match_parent을 사용해야합니다. 그런 다음 내부에 View을 채우려면 layout_weight을 사용해야합니다. 가중치를 사용하는 경우 자동 크기를 조정하려는 크기는 0dp으로 설정해야하며 주어진 경우에만 하나만 설정할 수 있습니다. View 감안할 때 LinearLayoutButton 사이의 가중치를 조정하면 원하는 레이아웃을 얻을 수 있습니다.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <EditText android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:id="@+id/txtDisplay"/> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1"> 

     <Button android:text="1" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnSatu"/> 

     <Button android:text="2" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnDua"/> 

     <Button android:text="3" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnTiga"/> 

     <Button android:text=":" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnBagi"/> 

    </LinearLayout> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1"> 

     <Button android:text="4" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnEmpat"/> 

     <Button android:text="5" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnLima"/> 

     <Button android:text="6" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnEnam"/> 

     <Button android:text="x" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnKali"/> 

    </LinearLayout> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1"> 

     <Button android:text="7" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnTujuh"/> 

     <Button android:text="8" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnDelapan"/> 

     <Button android:text="9" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnSembilan"/> 

     <Button android:text="+" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnTambah"/> 

    </LinearLayout> 

    <LinearLayout android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1"> 

     <Button android:text="0" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnNol"/> 

     <Button android:text="=" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnSamadengan"/> 

     <Button android:text="C" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnReset"/> 

     <Button android:text="-" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:gravity="center" 
      android:id="@+id/btnKurang"/> 

    </LinearLayout> 

</LinearLayout> 
관련 문제