2013-03-14 4 views
7

나는 안드로이드 레이아웃이 처음이다. 아래의 레이아웃, 위의 레이아웃, 레이아웃 오른쪽, 레이아웃 대신 중첩 된 레이아웃을 사용할 때 어플리케이션의 성능이 컴포넌트의 상대 레이아웃의 속성을 어떻게 남겼는지 말해 줄 수 있습니까? 예를 들어안드로이드 중첩 된 레이아웃

:

<RelativeLayout> 
    <scrollView> 
     <RelativeLayout> 
      <LinearLayout> Header<LinearLayout> 
      <TextView/> <TextView/> 
      <TableLayout> 
        <TableRow><ImageView/> <TextView> <Spinner><TableRow> 
        <TableRow><ImageView/> <TextView> <Spinner><TableRow> 
        <TableRow><ImageView/> <TextView> <Spinner><TableRow> 
        <TableRow><ImageView/> <TextView> <Spinner><TableRow> 
      </TableLayout> 

      <TextView> 
      <TableLayout> 
       <TableRow> 
        <LinearLayout> <ImageView><TextView></LinearLayout> 
        <EditText> 
       </TableRow> 
       <TableRow> 
        <LinearLayout> <ImageView><TextView></LinearLayout> 
        <EditText> 
       </TableRow> 
       <TableRow> 
        <TextView> 
        < Spinner> 
       </TableRow> 
       <TableRow><TextView> <Spinner></TableRow> 
      </TableLayout> 

      <TableLayouts>---</TableLayout> 

      <LinearLayout> footer</LinearLayout> 
</RelativeLayout> 
<ScrollView> 
</RelativeLayout> 

감사 & 감사 Yamini

답변

9

글쎄 몇 가지 레이아웃은 중첩 수준을 지정해야만 만들 수 있습니다. 하지만 너무 많은 중첩 LinearLayouts를 사용하지 않아야하며, 가중치가있는 LinearLayouts를 절대 중첩하지 않는 것이 좋습니다. official docs에서 레이아웃 최적화에 대해 더 자세히 읽을 수 있습니다.

개인적으로 간단한 물건에는 LinearLayouts을 사용하고 레이아웃이 복잡해지면 RelativeLayout을 사용하기 시작합니다. 그것이 선호의 문제이기 때문에 아무 대답도 없습니다.

+0

스크롤이 완료 될 때까지보기를 여러 번 다시 그려야하는 목록의 경우 특히 중요합니다. –

2

당신에게 계층 뷰어를 불리는 도구를 추천 매우겠습니까. SDK와 번들로 제공되며 android-sdk/tools 디렉토리에서 찾을 수 있습니다. 간단히 말해서, 처리에 걸리는 시간을 측정하여 레이아웃의 문제점을 찾는 데 도움이됩니다. 계층 구조 뷰어에 대한 더 광범위한 설명은 here에서 찾을 수 있습니다. 희망이 도움이됩니다.