Этот действительно заставил меня задуматься и, в конце концов, оказался в неверии ....
У меня была точно такая же проблема при использовании RelativeLayout с include
В некоторых моих XML-файлах я мог ссылаться на id внутри include.В других нет.
layout_head.xml содержит макет для включения.Я использовал следующее утверждение:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" style="@style/ETActivity">
<include android:id="@+id/cell1" layout="@layout/aalayout_head" />
<ListView android:id="@+id/main_list" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_below="@id/layout_spacer" />
</RelativeLayout>
Я видел, что это работает в каждом XML-файле, который был в алфавитном порядке ниже layout_head.xml.Поэтому я переименовал layout_head.xml в aalayout_head.xml и, конечно, переключил оператор include на новое имя - et voila - работает в каждом файле ...
Кажется, проблема сплагин Eclipse, а не сама система Android.
Странно, но, к счастью, теперь он работает без нареканий.
Кстати: любая идея, почему мой макет не работает, когда я использовал android: layout_below = "@id / cell1 "?