我想要做的是有一個主/細節風格的應用程序,其中我的選擇器選項之一是Google Map,在地圖佈局下面有一些額外的按鈕。用包含片段的佈局替換片段
我所有的其他選項只需要加載一個片段導入的FrameLayout,使用類似:
getSupportFragmentManager().beginTransaction()
.replace(R.id.content, myFragment, fragTag)
.commit();
我不能做到這一點與MapFragment因爲我需要其他的東西在佈局和嵌套片段不支持(但希望)。所以,我需要用一個包含片段的複合視圖替換常規片段,但我不確定片段管理應該如何工作。
我不認爲我可以叫
getSupportFragmentManager().beginTransaction()
.replace(R.id.content, myCompositeView, fragTag)
.commit();
目前,我這樣做:
Fragment currentFrag = getSupportFragmentManager().findFragmentById(R.id.content);
getSupportFragmentManager().beginTransaction().remove(currentFrag);
LayoutInflater inflator = LayoutInflater.from(this);
ViewGroup container = (ViewGroup)findViewById(R.id.content);
container.removeAllViews();
View mapView = inflator.inflate(R.layout.store_finder, container, true);
再次與其他片段取代這個當它使得它有點亂我需要再次從佈局中刪除所有視圖。另外,我不確定如何在像這樣設置之後正確刪除MapFragment。
我會很感激的任何幫助,有人把我放心了:)
腳註:顯然嵌套片段的事了,但不知道這是我想要去的東西的方法簡單。 http://developer.android.com/about/versions/android-4.2.html#NestedFragments
我用這一招:http://pastebin.com/CLRNd4BT怎麼樣了? – deadfish
它看起來像你正在用另一個片段替換一個片段?這不是我要求的 –
*,但不知道這是我想要簡單的事情的方式。* - 沒有另一種非混亂的方式。一個片段被設計爲被另一片段替換,而不是用佈局+片段替換。 – Luksprog