저는 앱에서 RelativeLayouts를 광범위하게 사용하고 있으며,이를 지정하는 방법을 알고 있다고 생각했지만 손실이 있습니다. 나는 기본적으로 4 개의 TextView를 두 줄의 두 줄에 위치시키고 있는데, 두 줄은 각각 제공 될 레이블과 텍스트로 구성됩니다.안드로이드 layout_below가 작동하지 않습니다.
출생 : 1810년 8월 23일 메이슨 (주), 켄터키
사망 : 1865년 7월 15일 신시내티, 해밀턴 (주), 오하이오
이 레이아웃의 관련 부분입니다 :
그것은 같이 보일 것이다 <TextView android:id="@+id/birth_lbl"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/given_layout"
android:layout_alignLeft="@+id/given_layout"
android:layout_marginTop="6dip"
style="@style/label"
android:text="@string/born"
/>
<TextView android:id="@+id/birth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/birth_lbl"
android:layout_alignBaseline="@+id/birth_lbl"
android:layout_marginLeft="10dip"
android:layout_marginRight="6dip"
style="@style/main_text"
android:text="dd Mmm yy"
/>
<TextView android:id="@+id/death_lbl"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/birth"
android:layout_alignLeft="@+id/birth_lbl"
android:layout_marginTop="4dip"
style="@style/label"
android:text="@string/died"
/>
<TextView android:id="@+id/death"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/death_lbl"
android:layout_alignLeft="@+id/birth"
android:layout_alignBaseline="@+id/death_lbl"
android:layout_marginRight="6dip"
style="@style/main_text"
android:text="dd Mmm yy"
/>
무엇인가의 이유로, 이것은 생년월일 선이 보이는 위의 사인 선보기를 표시합니다! 'layout_below = "@ + id/birth_lbl"'대신에 death_lbl 뷰의 스펙을 변경하면, 라인이 올바르게 배치됩니다! 그러나 "출생"뷰를 여러 줄로 줄이는 것이 가능하므로 두 번째 줄을 "birth_lbl"이 아닌 "birth"아래에 배치해야합니다.
누구든지이 문제가 발생하는 이유를 알고 계십니까? Eclipse의 그래픽 레이아웃 편집기와 런타임시 Android 4.0을 실행하는 태블릿 모두에서 발생합니다.
'id' 선언의'+'기호는'id'의 첫 번째 모양에서만 사용해야합니다. 전체 레이아웃 파일을 편집하고 게시하여 사용하는 추가보기 ('given_layout'?)를 확인해야합니다.난 에뮬레이터에서 그것을 시도하고 그것을 위해 노력하고 있지만 당연히 나는 여분의'given_layout'보기가 필요하지 않습니다. – Luksprog
Slukian이 말했듯이, Slukian이 말한대로, 당신은 당신이하고있는 것을 알지도 못합니다 ... 원하는 곳 어디에서나 '+'를 사용하지 말고 각각의 +가 새로운 변수를 만드는 것과 같다고 생각하십시오. 컴파일러가 그 말을하지 않는 이상한 ... – Cehm
더 부드럽게 여기! android 21 컴파일러는 여러분이 "디자인"을 사용할 때 이러한 plusses를 넣습니다. 우리가 질문하는 이유는 당신이 말했듯이, 우리는 모른다는 것입니다. – user462990