我都是新來的Android開發,但已經很大的麻煩。我在這裏和其他網站上閱讀了幾個關於類似問題或甚至相同問題的線索。但是我發現的所有答案都不符合我的需求,或者根本不適合我。Android - 重新膨脹一個片段導致「錯誤膨脹類的片段」
所以,這是事情。我有一個自制的「菜單」圖層,包括活動底部的3個按鈕和上面的ScrollView。現在上點擊這些按鈕中的一個I簡單地使用
svContent.removeAllViews();
getLayoutInflater().inflate(R.layout.fragment_xyz, (ScrollView) findViewById(R.id.svContent));
其被充氣完全正常充氣一個片段插入到滾動型。
現在膨脹的片段包含Google Maps(API 2)的另一個片段,看起來像這樣。
<fragment
android:id="@+id/fMap"
android:name="com.google.android.gms.maps.MapFragment"
android:layout_width="fill_parent"
android:layout_height="150dp" />
此片段也填充了我想對其父片段的通貨膨脹和地圖工作正常的方式。
現在我點擊另一個菜單按鈕來讓另一個片段被充氣。但就當我再次點擊第一個片段的按鈕,我得到以下錯誤:
Duplicate id xxxxx, tag null, or parent id xxxxx with another fragment for com.google.android.gms.maps.MapFragment
就像我說的,我已經嘗試了幾種解決方案,我在網上找到的,包括
- 從延伸片段移動使用,而不是片段
- 充氣子片段SupportMapFragment FragmentActivity
- 從代碼,而不是XML(谷歌地圖的一個)
所有這些有幾個缺點,我不能在此刻接受(至少我認爲)或「沒有工作」爲我或我的星座
任何幫助是極大的讚賞。如果您需要更多信息,請告訴我。
問候, D.
爲什麼你「無法接受」通過代碼創建片段?這是4行代碼,它不會改變任何東西,它會完美地工作。 – 2014-09-12 21:31:24
嘗試移動到另一個星座。仙女座......也許? – Emmanuel 2014-09-12 21:33:19
@StephaneMathis從代碼中創建片段是我完全可以接受的,但不幸的是,它不適合我 - 至少不是我在查看api文檔時找到的示例。我不記得我用過它的確切問題,在過去的兩天裏,我只是在解決方案上嘗試過很多次。但我當然可以再試一次,你有沒有過時的工作例子? – tetzlaff 2014-09-12 21:38:18