책에서 제공하는 코드
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="정렬 테스트"
android:textSize="30sp"
android:textColor="#00ff00"
/>
</LinearLayout>
이클립스를 이용하여 안드로이드 2.3.1 버젼을 만들경우 생성되는 코드
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="정렬 테스트"
android:textsize="30pt"
android:textColor="#00ff00"
/>
</RelativeLayout>
위의 라이너 레이아웃은 안드로이드 정복이라는 책의 예제에서 사용하는 코드이며
아래는 이클립스를 통해 새로운 안드로이드 프로젝트를 생성했을 때 나오는 코드입니다.
위와 같은 "정렬 테스트"라는 문자를 출력하는 경우에도 위의 코드는 에러가 안나지만
아래의 코드는 에러가 나옵니다 ㅠㅠ
[2012-08-06 22:35:05 - centerTest] Error in an XML file: aborting build.
위와 같은 에러 메세지가 나오는데 위 두개가 어떠한 차이점이 있나요
헉... 빠진 게 없다니요... 아래 마지막 줄 제일 오른쪽에 >가 없지 않소.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
그리고 라이너 --> 리니어 , 리얼리티 --> 렐러티브
렐러티브 레이아웃은 예전에도 있던 것입니다.
단지 ADT가 업데이트 되면서 예전에는 기본 레이아웃을 리니어로 해주던 것을 요즘은 렐러티브로 해줄 뿐이고...
리니어레이아웃은 이름 그대로 가로 또는 세로 방향 한쪽 방향으로 주루룩 자식들을 차례대로 배열하는 것이고
렐리티브레이아웃은 이름 그대로 다른 애들과의 상대적인 위치를 잡는 방식입니다.
리니어레이아웃은 공부하기 쉽지만 복잡한 레이아웃인 경우 이중삼중으로 만들어야 해서 XML 파일 읽어 뷰 배치하는데 비효율적이고
렐러티브레이아웃은 순서대로 뷰가 만들어지므로 효율적이나 공부하기 어렵다고 알려져 있지만 이것도 옛말. 공부하기 별로 어렵지 않지요.
책 보면 제일 앞 부분에 나오는 게 레이아웃입니다.
댓글을 달면 이전 댓글이 안보이는군요.. 처음에 댓글 달아주신분 죄송합니다.
앞에 아까이님께서 지적해주신 대로 리니어에 대한 레이아웃이 나오고
리니어 다음에 렐러티브에 대한 레이아웃이 설명되어 있네요... 죄송합니다.
앞부분부터 공부하다보니 뒷부분에 명시가 되어 있는 것을 몰랐네요...
그런데 리니어는 제가 임의로 지정할수는 없는건가요?
새로운 프로젝트로 만들면 항상 렐러티브 레이아웃으로 설정이 되는군요..
아 그리고 저기에서 > 가 빠졌다고 해서 궁금증이 생겨서 질문드려봐요
리니어가 선언되었고 텍스트뷰가 선언 후 /> 로 텍스뷰가 닫히고 </리니어> 가 닫히면서 끝나는 코드인데
중간에 > 는 어떤녀석인가요?;;; 나름대로 프로그래밍에 대해서 공부했다고는 하지만 어렵네요;;
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
빨간색 부분이 빠졌는데요^^;
XML 이라는 마크업 언어에대해서 공부해보시면 아실 수 있을겁니다.
XML 이나 JSON 은 일반적으로 프로그래밍할 때 많이 사용하니 공부해두시면 좋지요.
임의로 지정할 수 없냐고 물어보신게 어떤 의미인지 모르겠네요.;
새로 생성할땐 그렇더라도 바꾸면 그만이니까요. 문제는 없습니다.




에러는 RelativeLayout 에 > 가 빠져서 그런것 같구요.
정상적인 입문서라면 RelativeLayout 와 LinearLayout 의 차이점에 대해서 자세히 나와있을겁니다.