2010-01-04 7 views
10

Android에서 다음 레이아웃을 만드는 방법은 무엇입니까?Android/layout : 헤더 콘텐츠 레이아웃을 만드는 방법

"머리말", 즉 항상 같은 머리글을 원합니다. 변경해야 할 유일한 것은 머리글 아래 영역입니다. 그 모든 일이 어디 컨텐츠 영역 인 웹 페이지로의

생각해 =)

+--------------------+ 
| H E A D E R  | 
+--------------------+ 
|     | 
|     | 
|     | 
| C O N T E N T  | 
|     | 
|     | 
|     | 
+--------------------+ 

물론, 그하는 LinearLayot을 만들 상단에보기를 추가 할 수있을만큼 간단하고 다른보기 그 아래 - 타다! 그러나 Im After는 프로젝트의 "설정"또는 디자인을 통해 콘텐츠의 내용을 쉽게 변경하는 방법입니다. 정말 싶습니다 무엇

는 "슬쩍"내용 - 지역의 새로운보기/일 "에 롤"지역 다음 단지를 (here 참조)하지만 같은 헤더를 유지할 수있을 것입니다. 정말 layoyt-사례의 포괄적 인 라이브러리입니다 그리워 무엇

...

관련

답변

23

당신은 헤더의 레이아웃 파일을 만들 수 있습니다. 정확히 헤더 레이아웃의 나머지 부분에 따라 달라집니다 내용의 레이아웃의 상단에 머물 얼마나

<include android:id="@+id/header" 
     layout="@layout/my_header" 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent"/> 

: 각 콘텐츠 활동에 대한 레이아웃의 상단에 같은 레이아웃 파일을 포함합니다. LinearLayout을 orientation = "vertical"로 사용하거나, 상대적 레이아웃을 include 문에 align_parentTop = "true"와 함께 사용할 수 있습니다.

android documentation에는 기본적인 레이아웃 유형이 요약되어 있습니다.

+0

Thx, 나는 그 시도를 줄 것이다 =) – Ted

2

또 다른 가능한 해결책은 '내용'섹션으로 ViewFlipper 또는 ViewSwitcher를 사용하는 것입니다. 여기서는 전환 할 수있는 다양한 유형의 콘텐츠를 포함하며 표시 할보기를 설정합니다 (애니메이션을 할 수 있습니다 플립/스위치도 있음). 이 단점은 콘텐츠가 ViewFlipper/ViewSwitcher의 하위 요소 인 기본 레이아웃에 추가되어야한다는 것입니다 (레이아웃을 별도의 XML 파일로 유지하는 데에도 사용할 수 있음).

전환 된 콘텐츠의 렌더링을 다른 활동으로 위임하는 것은 그리 간단하지 않습니다. TabHost/TabWidget을 사용하면 탭 호스트의 컨텐트 영역이 다른 활동에서 생성됩니다. 이런 식으로 수행해야하는 경우 탭 코드를 예제로 사용할 수 있습니다.

관련 문제