public void kill() { DestroyImmediate(billboard, true); //DestroyImmediate(signboard, true); DestroyImmediate(marker.gameObject, true); basic_poi = null; detail_poi = null; map = null; marker = null; DestroyImmediate(this, true); }
private void initDetail(PoiJsonResponse_PoiDetail p) { poi.detail_poi = p; int viewcount = 0; GameObject _container = transform.Find("scrollview/viewport/content").gameObject; _container.GetComponent <RectTransform>().sizeDelta = new Vector2(((p.items.Length > 0) ? (1 + p.items.Length) * (width + padding_right) : (1) * (width + padding_right)), _container.GetComponent <RectTransform>().sizeDelta.y); mainview = Instantiate(Resources.Load("mainview"), new Vector3(0, -15, 0), Quaternion.identity) as GameObject; main_view_script = mainview.GetComponent <MainViewScript>(); RectTransform rt = mainview.GetComponent <RectTransform>(); mainview.GetComponent <RectTransform>().sizeDelta = new Vector2(GameObject.Find("Main Camera/BillboardDetail").GetComponent <RectTransform>().sizeDelta.x, mainview.GetComponent <RectTransform>().sizeDelta.y); main_view_script.txt_title.text = poi.basic_poi.original_name; rt.rect.Set(rt.rect.x, rt.rect.y, width, rt.rect.height); mainview.transform.SetParent(_container.transform); mainview.transform.localScale = new Vector3(1, 1, 1); mainview.transform.localEulerAngles = new Vector3(0, 0, 0); mainview.GetComponent <RectTransform>().localPosition = new Vector3(0, 0, 0.05f); if (p.description.Split(' ').Length > max_description) { string txt_str = ""; string[] txt = p.description.Split(' '); for (int i = 0; i < max_description - 2; ++i) { txt_str += txt[i] + " "; } txt_str += txt[txt.Length - 1] + "..."; main_view_script.txt_description.text = txt_str; } else { main_view_script.txt_description.text = p.description; } //mainview.transform.Find("listview").GetComponent<ScrollSnapRect>().width = width; //mainview.transform.Find("listview").GetComponent<ScrollSnapRect>().padding_right = padding_right; //mainview.transform.Find("listview").GetComponent<ScrollSnapRect>()._container = _container.GetComponent<RectTransform>(); //mainview.transform.Find("listview").GetComponent<ScrollSnapRect>().index = viewcount; if (poi.basic_poi.fan_count > 0) { mainview.transform.Find("listview/viewport/content/social_buttons/like/txt").GetComponent <UnityEngine.UI.Text>().text = poi.basic_poi.fan_count + " Likes"; } if (poi.basic_poi.contacts.Length == 0) { mainview.transform.Find("listview/viewport/content/txt_contacts").gameObject.SetActive(false); main_view_script.txt_email.gameObject.SetActive(false); main_view_script.txt_phone.gameObject.SetActive(false); main_view_script.txt_mobile.gameObject.SetActive(false); main_view_script.website_button.gameObject.SetActive(false); } for (int i = 0; i < poi.basic_poi.contacts.Length; ++i) { if (!main_view_script.txt_email.gameObject.activeSelf && poi.basic_poi.contacts[i].email != null) { main_view_script.txt_email.gameObject.SetActive(true); main_view_script.txt_email.text = poi.basic_poi.contacts[i].email; } if (!main_view_script.txt_phone.gameObject.activeSelf && poi.basic_poi.contacts[i].phone != null) { main_view_script.txt_phone.gameObject.SetActive(true); main_view_script.txt_phone.text = poi.basic_poi.contacts[i].phone; } if (!main_view_script.txt_mobile.gameObject.activeSelf && poi.basic_poi.contacts[i].mobile != null) { main_view_script.txt_mobile.gameObject.SetActive(true); main_view_script.txt_mobile.text = poi.basic_poi.contacts[i].mobile; } if (!main_view_script.website_button.activeSelf && poi.basic_poi.contacts[i].website != null) { main_view_script.website_button.SetActive(true); this.website = poi.basic_poi.contacts[i].website; main_view_script.website_button.GetComponent <UnityEngine.UI.Button>().onClick.AddListener(delegate { Application.OpenURL(website); }); } } //if (p.items.Length > 0) //{ // mainview.transform.Find("listview/viewport/content/txt_toc").GetComponent<UnityEngine.UI.Text>().text = "Offers"; // //viewcount++; // itemviews = new GameObject[p.items.Length]; // for (int i = 0; i < p.items.Length; ++i) // { // GameObject btn = Instantiate(Resources.Load("tocbutton"), new Vector3(0, -15, 0), Quaternion.identity) as GameObject; // btn.GetComponent<TOCButton>().init(viewcount, _container.GetComponent<RectTransform>(), width, padding_right); // btn.transform.Find("txt_btn").GetComponent<Text>().text = p.items[i].name; // btn.GetComponent<Image>().color = billboardColor; // btn.transform.SetParent(mainview.transform.Find("listview/viewport/content"), false); // itemviews[i] = Instantiate(Resources.Load("itemview"), new Vector3(0, -15, 0), Quaternion.identity) as GameObject; // itemviews[i].transform.SetParent(_container.transform); // itemviews[i].transform.localScale = new Vector3(1, 1, 1); // itemviews[i].transform.localEulerAngles = new Vector3(0, 0, 0); // itemviews[i].GetComponent<RectTransform>().localPosition = new Vector3(viewcount * (width + padding_right), 0, 0.05f); // itemviews[i].transform.Find("txt_category").GetComponent<UnityEngine.UI.Text>().text = p.items[i].name; // //itemviews[i].transform.Find("listview").GetComponent<ScrollSnapRect>().width = width; // //itemviews[i].transform.Find("listview").GetComponent<ScrollSnapRect>()._container = _container.GetComponent<RectTransform>(); // //itemviews[i].transform.Find("listview").GetComponent<ScrollSnapRect>().padding_right = padding_right; // //itemviews[i].transform.Find("listview").GetComponent<ScrollSnapRect>().index = viewcount; // for (int j = 0; j < p.items[i].values.Length; ++j) // { // if (p.items[i].values[j].is_special) // { // GameObject prod = null; // prod = Instantiate(Resources.Load("product"), new Vector3(0, -15, 0), Quaternion.identity) as GameObject; // prod.transform.Find("hlayout/txt_title").gameObject.GetComponent<Text>().text = p.items[i].values[j].name; // if (p.items[i].values[j].price != 0) // prod.transform.Find("hlayout/txt_price").gameObject.GetComponent<Text>().text = p.items[i].values[j].price + " €"; // if (p.items[i].values[j].date_from != null && !p.items[i].values[j].date_from.Equals("")) // { // prod.transform.Find("date_layout").gameObject.SetActive(true); // System.DateTime date_from = new System.DateTime(0), date_to = new System.DateTime(0); // date_from = System.DateTime.Parse(p.items[i].values[j].date_from); // if (p.items[i].values[j].date_to != null && !p.items[i].values[j].date_to.Equals("")) // date_to = System.DateTime.Parse(p.items[i].values[j].date_to); // prod.transform.Find("date_layout/txt_time").gameObject.GetComponent<Text>().text = date_from.ToShortDateString() + " " + date_from.ToShortTimeString(); // if (date_to.Subtract(new System.DateTime(1970, 1, 1, 0, 0, 0, System.DateTimeKind.Utc)).TotalMilliseconds != 0 && !date_from.Equals(date_to) && date_to.Subtract(date_from).Milliseconds > 60000) // { // if (date_from.DayOfYear.Equals(date_to.DayOfYear)) // prod.transform.Find("date_layout/txt_time").gameObject.GetComponent<Text>().text += " - " + date_to.ToShortTimeString(); // else // prod.transform.Find("date_layout/txt_time").gameObject.GetComponent<Text>().text += " - " + date_to.ToShortDateString() + " " + date_to.ToShortTimeString(); // } // } // prod.transform.SetParent(mainview.transform.Find("listview/viewport/content"), false); // } // GameObject prod2 = null; // prod2 = Instantiate(Resources.Load("product"), new Vector3(0, -15, 0), Quaternion.identity) as GameObject; // if (p.items[i].values[j].product_cover != null && !p.items[i].values[j].product_cover.Equals("") && !p.items[i].values[j].product_cover.Equals("NULL")) // { // prod2.transform.Find("cover_layout").gameObject.SetActive(true); // prod2.transform.Find("cover_layout/text/caption/txt_title").gameObject.GetComponent<Text>().text = p.items[i].values[j].name; // if (p.items[i].values[j].price != 0) // prod2.transform.Find("cover_layout/text/caption/txt_price").gameObject.GetComponent<Text>().text = p.items[i].values[j].price + " €"; // prod2.transform.Find("cover_layout/text/txt_description").gameObject.GetComponent<Text>().text = p.items[i].values[j].description; // StartCoroutine(loadProductImage(p.items[i].values[j].product_cover, prod2.transform.Find("cover_layout/img_cover").gameObject.GetComponent<Image>())); // } // else // { // prod2.transform.Find("hlayout").gameObject.SetActive(true); // prod2.transform.Find("hlayout/txt_title").gameObject.GetComponent<Text>().text = p.items[i].values[j].name; // if (p.items[i].values[j].price != 0) // prod2.transform.Find("hlayout/txt_price").gameObject.GetComponent<Text>().text = p.items[i].values[j].price + " €"; // if (p.items[i].values[j].date_from != null && !p.items[i].values[j].date_from.Equals("")) // { // prod2.transform.Find("date_layout").gameObject.SetActive(true); // System.DateTime date_from = new System.DateTime(0), date_to = new System.DateTime(0); // date_from = System.DateTime.Parse(p.items[i].values[j].date_from); // if (p.items[i].values[j].date_to != null && !p.items[i].values[j].date_to.Equals("")) // date_to = System.DateTime.Parse(p.items[i].values[j].date_to); // prod2.transform.Find("date_layout/txt_time").gameObject.GetComponent<Text>().text = date_from.ToShortDateString() + " " + date_from.ToShortTimeString(); // if (date_to.Subtract(new System.DateTime(1970, 1, 1, 0, 0, 0, System.DateTimeKind.Utc)).TotalMilliseconds != 0 && !date_from.Equals(date_to) && date_to.Subtract(date_from).Milliseconds > 60000) // { // if (date_from.DayOfYear.Equals(date_to.DayOfYear)) // prod2.transform.Find("date_layout/txt_time").gameObject.GetComponent<Text>().text += " - " + date_to.ToShortTimeString(); // else // prod2.transform.Find("date_layout/txt_time").gameObject.GetComponent<Text>().text += " - " + date_to.ToShortDateString() + " " + date_to.ToShortTimeString(); // } // } // } // prod2.transform.SetParent(itemviews[i].transform.Find("listview/viewport/content"), false); // } // viewcount++; // } //} }