public static void SetUUebViewOnScrollView(GameObject scrollView, string html, float offsetY, string viewName = ConstSettings.ROOTVIEW_NAME) { var eventReceiverCandidate = scrollView.GetComponents <Component>().Where(component => component is IUUebViewEventHandler).FirstOrDefault(); if (eventReceiverCandidate == null) { throw new Exception("information scroll view should have IUUebViewEventHandler implemented component."); } var scrollRect = scrollView.GetComponent <ScrollRect>(); var content = scrollRect.content; // 完了するまで見えない scrollView.GetComponent <CanvasGroup>().alpha = 0; var viewSize = scrollView.GetComponent <RectTransform>().sizeDelta; var view = UUebViewComponent.GenerateSingleViewFromHTML(scrollView, html, viewSize, null, null, viewName); // scrollEventに対してのハンドラをセットする。 // var uuebViewComponent = view.GetComponent<UUebViewComponent>(); // var scrollEvent = uuebViewComponent.GetScrollEvent(); // scrollRect.onValueChanged.AddListener( // (v) => // { // scrollEvent(content.anchoredPosition.y); // } // ); view.transform.SetParent(content.gameObject.transform, false); }
/* * public apis */ /** * show information view from url. * scrollView should have component which implement IUUebViewEventHandler for receiving events. */ public static void Info_Show(GameObject scrollView, string url, string viewName = ConstSettings.ROOTVIEW_NAME) { var eventReceiverCandidate = scrollView.GetComponents <Component>().Where(component => component is IUUebViewEventHandler).FirstOrDefault(); if (eventReceiverCandidate == null) { throw new Exception("information scroll view should have IUUebViewEventHandler implemented component."); } var content = scrollView.GetComponentsInChildren <RectTransform>().Where(t => t.gameObject.name == "Content").FirstOrDefault(); if (content == null) { throw new Exception("information scroll view should have 'Content' GameObject like uGUI default ScrollView."); } var viewSize = scrollView.GetComponent <RectTransform>().sizeDelta; ResourceLoader.MyHttpRequestHeaderDelegate httpReqHeaderDel = (p1, p2, p3, p4) => { return(autoya.httpRequestHeaderDelegate(p1, p2, p3, p4)); }; ResourceLoader.MyHttpResponseHandlingDelegate httpResponseHandleDel = (p1, p2, p3, p4, p5, p6, p7) => { Action <string, int, string, AutoyaStatus> p8 = (q1, q2, q3, q4) => { p7(q1, q2, q3); }; autoya.httpResponseHandlingDelegate(p1, p2, p3, p4, p5, p6, p8); }; var view = UUebViewComponent.GenerateSingleViewFromUrl(scrollView, url, viewSize, httpReqHeaderDel, httpResponseHandleDel, viewName); view.transform.SetParent(content.gameObject.transform, false); }
// Use this for initialization void Start() { var scrollView = GameObject.Find("Scroll View"); scrollViewContent = GameObject.Find("Scroll View/Viewport/Content"); var scrollViewSize = scrollView.GetComponent <RectTransform>().sizeDelta; uuebView = UUebViewComponent.GenerateSingleViewFromUrl(this.gameObject, "resources://items.html", scrollViewSize); uuebView.transform.SetParent(scrollViewContent.transform, false); }
IEnumerator Start() { while (iEnumGens == null) { // wait to set enumGens; yield return(null); } this.index = 0; var totalCount = iEnumGens.Length; // wait for check UnityTest is running or not. yield return(new WaitForSeconds(1)); if (Miyamasu.Recorder.isRunning) { Destroy(this); yield break; } var canvasCor = Resources.LoadAsync <GameObject>("MiyamasuPrefabs/MiyamasuCanvas"); while (!canvasCor.isDone) { yield return(null); } var canvasPrefab = canvasCor.asset as GameObject; var canvas = Instantiate(canvasPrefab); canvas.name = "MiyamasuCanvas"; var scrollViewRectCandidates = canvas.transform.GetComponentsInChildren <RectTransform>(); GameObject attachTargetView = null; // get Content of ScrollView. foreach (var rect in scrollViewRectCandidates) { if (rect.name == "Scroll View") { scrollViewRect = rect.gameObject.GetComponent <RectTransform>(); } if (rect.name == "Content") { attachTargetView = rect.gameObject; contentRect = attachTargetView.GetComponent <RectTransform>(); } } var scrollViewWidth = contentRect.rect.width; Recorder.logAct = this.AddLog; var view = UUebViewComponent.GenerateSingleViewFromHTML(this.gameObject, htmlContent, new Vector2(scrollViewWidth, 100)); view.name = "MiyamasuRuntimeConsole"; view.transform.SetParent(attachTargetView.transform, false); currentUUebViewComponent = view.GetComponent <UUebViewComponent>(); started = true; yield return(ContCor()); }
IEnumerator Start() { var scene = UnityEngine.SceneManagement.SceneManager.GetActiveScene(); if (scene.name.StartsWith("InitTestScene") && "InitTestScene".Length < scene.name.Length) { Destroy(this); yield break; } while (testEnumerators == null) { // wait to set enumGens; yield return(null); } var canvasCor = Resources.LoadAsync <GameObject>("MiyamasuPrefabs/MiyamasuCanvas"); while (!canvasCor.isDone) { yield return(null); } var canvasPrefab = canvasCor.asset as GameObject; var canvas = Instantiate(canvasPrefab); canvas.name = "MiyamasuCanvas"; var scrollViewRectCandidates = canvas.transform.GetComponentsInChildren <RectTransform>(); GameObject attachTargetView = null; // get Content of ScrollView. foreach (var rect in scrollViewRectCandidates) { if (rect.name == "Scroll View") { scrollViewRect = rect.gameObject.GetComponent <RectTransform>(); } if (rect.name == "Content") { attachTargetView = rect.gameObject; contentRect = attachTargetView.GetComponent <RectTransform>(); } } var scrollViewWidth = contentRect.rect.width; MiyamasuTestRunner.logAct = this.AddLog; var view = UUebViewComponent.GenerateSingleViewFromHTML(this.gameObject, htmlContent, new Vector2(scrollViewWidth, 100)); view.name = "MiyamasuRuntimeConsole"; view.transform.SetParent(attachTargetView.transform, false); currentUUebViewComponent = view.GetComponent <UUebViewComponent>(); Reset(testEnumerators.Count); StartCoroutine(RunTestCoroutines()); }