簡體   English   中英

在片段中恢復谷歌地圖 state

[英]Restore Google Maps state in Fragment

我正在創建一個應用程序,其中有一個包含 map 的片段。 當用戶單擊搜索欄時,會顯示另一個片段(搜索片段),我在其中處理所有搜索邏輯,包括顯示建議。 搜索完成后,我在與搜索查詢對應的點添加一個標記。 但是,片段被重新創建並且onMapReady()也被調用。 因此,在將相機移動到我想要放置標記的位置的過程中,出現了一個故障,它沒有顯示從SearchFragmentMapsFragment的平滑過渡。 有沒有辦法保存 map state 以避免onMapReadyCallback以便從SearchFragmentMapsFragment的過渡變得無縫?

您可以在MapsFragment中設置setRetainInstance(true)

Java:

public class MyMapFragment extends Fragment {

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        setRetainInstance(true);
    }
}

Kotlin:

class MyMapsFragment : Fragment() {

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        retainInstance = true
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM