2012-03-19 43 views
1

我有個親戚佈局,在運行時,但在Eclipse圖形佈局設計師,我收到異常正常工作的RelativeLayout - 不可能解決資源

無法解析資源@ ID/imgSessionOutcome_Product1_Icon

的資源imageview被定義並且在引用它之前,所以我不太明白這個問題是什麼?該例外列出兩次,因此對它的引用都失敗。

我已經保存/清理過的項目,以確保資源重建,仍然是相同的錯誤。

Eclipse版本:赫利俄斯服務版本2上運行OSX最新更新等

<RelativeLayout 
    android:id="@+id/lySessionOutcome_Product1" 
    android:layout_width="match_parent" 
    android:layout_height="55dip" 
    android:layout_marginLeft="10dip" 
    android:layout_marginRight="5dip" 
    android:orientation="vertical" 
    android:visibility="gone"> 

    <ImageView 
     android:id="@+id/imgSessionOutcome_Product1_Icon" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginRight="10dip" 
     android:src="@drawable/gr_bag_bc" /> 

    <TextView 
     android:id="@+id/tvSessionOutcome_Product1_Description" 
     android:layout_width="fill_parent" 
     android:layout_height="26dip" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentRight="true" 
     android:layout_toRightOf="@id/imgSessionOutcome_Product1_Icon" 
     android:ellipsize="marquee" 
     android:singleLine="false" 
     android:text="Description" /> 

    <TextView 
     android:id="@+id/tvSessionOutcome_Product1_Type" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_above="@id/tvSessionOutcome_Product1_Description" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:layout_alignWithParentIfMissing="true" 
     android:layout_toRightOf="@id/imgSessionOutcome_Product1_Icon" 
     android:gravity="center_vertical" 
     android:text="Product type" 
     android:textAppearance="@style/largeBlack" /> 
</RelativeLayout> 

回答

6

嘗試使用

android:layout_toRightOf="@+id/imgSessionOutcome_Product1_Icon" 

嗯,我這個很久以前我不知道爲什麼它的工作原理回答然後我仍然不確定,但根據我的觀察,我認爲使用+符號會創建臨時引用視圖,以便我們可以在Android佈局編輯器中查看它,實際錨點視圖僅在運行時被選中。

如果你不使用+號,它就可以在運行時正常工作,如問題本身所述。 如果我錯了,請糾正我。

+0

哦,好的。我以爲@ + id是在向資源中添加新標識而不是引用現有資源時?我剛剛從android示例中刪除了相關的佈局:http://developer.android.com/resources/articles/layout-tricks-efficiency.html – MartinS 2012-03-19 10:11:02

+0

它現在正在工作嗎? +意思是你想讓它進入R文件它通常是你這樣做的方式,但我不知道有時候出現這樣的問題donno爲什麼 – 2012-03-19 10:13:31

+0

是的 - 引用@ + id的作品。 不明白爲什麼,但我有其他相關的佈局,它引用@id。我想我可以使資源的資源文件ids.xml /值 <項目類型= 「ID」 NAME = 「imgSessionOutcome_Product1_Icon」/> 然後總是@ id引用,而不是使用@ + ID在佈局。這是建議嗎? – MartinS 2012-03-19 10:17:59