public static void UnregisterSafeAreaComponent(CanvasSafeArea safeArea) { if (safeArea != null) { var index = s_safeAreasInScene.IndexOf(safeArea); if (index >= 0) { s_safeAreasInScene.RemoveAt(index); } } }
public void Show(Toast toast, Canvas canvasHierarchy, System.Func <Toast, ToastAnimator, bool> onToastComplete = null) { Transform targetTransform = null; if (canvasHierarchy != null) { CanvasSafeArea safeArea = canvasHierarchy.GetComponent <CanvasSafeArea>(); targetTransform = safeArea != null && safeArea.Content != null ? safeArea.Content : canvasHierarchy.transform; } Show(toast, targetTransform as RectTransform, onToastComplete); }
public static void RegisterSafeAreaComponent(CanvasSafeArea safeArea) { if (safeArea != null) { if (!s_safeAreasInScene.Contains(safeArea)) { s_safeAreasInScene.Add(safeArea); if (s_safeAreasInScene.Count == 1) { LoadSimFromEditorPrefs(); } } } }
protected void StartQueue() { if (m_ToastQueue.Count <= 0 || m_CurrentToast != null) { return; } if (m_ToastQueue.Count > 0) { KeyValuePair <Toast, Canvas> pair = m_ToastQueue.Dequeue(); m_CurrentToast = pair.Key; Transform parent = null; if (pair.Value != null) { CanvasSafeArea safeArea = pair.Value.GetComponent <CanvasSafeArea>(); parent = safeArea != null && safeArea.Content != null ? safeArea.Content : pair.Value.transform; } if (parent == null) { parent = DialogManager.rectTransform; } var cacheKey = ""; var assetPath = m_CurrentToast != null ? m_CurrentToast.assetPath : ""; var currentAnimator = m_CurrentToast is Snackbar? InstantiateSnackbarAnimator(assetPath, out cacheKey, parent) : InstantiateToastAnimator(assetPath, out cacheKey, parent); if (currentAnimator != null) { //Dont cache custom toasts if (m_CurrentToast != null && m_CurrentToast.IsCustomToast()) { _AnimatorsCache.Remove(cacheKey); } currentAnimator.Show(pair.Key, parent as RectTransform, OnToastCompleted); } else { m_CurrentToast = null; } } }
public virtual void Build(Canvas parentCanvas = null) { /*Transform parentTransform = null; * //Find RootCanvas * if (parentCanvas == null || parentCanvas.transform.root == this.transform) * { * parentCanvas = FindObjectOfType<Canvas>(); * if (parentCanvas != null && parentCanvas.transform.root == this.transform) * { * parentCanvas = null; * var allCanvas = FindObjectsOfType<Canvas>(); * foreach (var canvasComponent in allCanvas) * { * if (canvasComponent != null && canvasComponent.transform.root != this.transform) * { * parentCanvas = canvasComponent; * break; * } * } * } * } * * //Set Transform * if (parentCanvas != null) * { * parentCanvas = parentCanvas.transform.GetRootCanvas(); * CanvasSafeArea safeArea = parentCanvas.GetComponent<CanvasSafeArea>(); * parentTransform = safeArea != null && safeArea.Content != null ? safeArea.Content : parentCanvas.transform; * } * * Build(parentTransform);*/ //Set Transform Transform parentTransform = null; if (parentCanvas != null) { CanvasSafeArea safeArea = parentCanvas.GetComponent <CanvasSafeArea>(); parentTransform = safeArea != null && safeArea.Content != null ? safeArea.Content : parentCanvas.transform; } Build(parentTransform); }