我想將小地圖添加到列表中,並創建了一個Cursor適配器來處理位置列表。如何引用android列表適配器中的片段
對個人位置的佈局是這樣的:
<LinearLayout
... >
<TextView android:id="@+id/start_loc"
...
/>
<fragment android:id="@+id/start_loc_map"
android:name="com.google.android.gms.maps.MapFragment"
...
/>
</LinearLayout>
然後在適配器:
@Override
public void bindView(View view, Context context, Cursor cursor) {
startLocView = (TextView) view.findViewById(R.id.start_loc);
則是這樣的:
SupportMapFragment startLocMap =
(SupportMapFragment) view.findViewById(R.id.start_loc_map);
或:
這些作品都沒有。該視圖(並不令人意外)不能作爲片段進行轉換,並且不存在可用於適配器的片段或活動。我可以得到一個上下文和(Activity) context.getFragmentManager
,但我找不到任何方式從getChildFragmentManager
。我可以得到一個FrameLayout,這是容器對象,但我不知道任何方式引用其中包含的碎片。
如何從適配器獲取對佈局中的靜態(?)片段的引用?獲得<fragment>
比<TextView>
簡單嗎?
謝謝你。我正在尋找一種方法來做類似的事情,但是我需要能夠像通過maps API那樣標記地圖,添加標記。這個階段不一定需要互動。類似的線程中的海報(http://stackoverflow.com/questions/27397269/how-to-add-mapfragment-inside-a-listview-item-within-adapter)建議使用「lite」('options.liteMode (true);')模式,這將改善預期的問題。我還沒有嘗試過。 – albe
此外,這取決於位置。 – albe