コード例 #1
0
ファイル: MapSearch.cs プロジェクト: morbidintel/WebCity
 void AddItems(QueryAutocomplete autocomplete)
 {
     foreach (var p in autocomplete.predictions)
     {
         DropdownItem item = Instantiate(itemTemplate, dropdownHolder).AddComponent <DropdownItem>();
         item.button = item.GetComponentInChildren <Button>();
         item.button.onClick.AddListener(() => SelectAutocomplete(item.index));
         item.main_text           = item.transform.Find("Main").GetComponent <Text>();
         item.secondary_text      = item.transform.Find("Secondary").GetComponent <Text>();
         item.main_text.text      = p.structured_formatting.main_text;
         item.secondary_text.text = p.structured_formatting.secondary_text;
         item.index = items.Count;
         item.gameObject.SetActive(true);
         item.name = "Item " + items.Count;
         items.Add(item);
     }
 }
コード例 #2
0
ファイル: MapSearch.cs プロジェクト: morbidintel/WebCity
    IEnumerator AutocompleteCoroutine(string value)
    {
        yield return(new WaitForSecondsRealtime(.5f));

        if (value != "")
        {
            string url = string.Format(QueryAutocomplete.URL + "&location={1}&radius={2}",
                                       WWW.EscapeURL(value),
                                       MapCamera.Instance.GetCameraCoords().ToString(),
                                       MapCamera.Instance.GetRadius());
            WWW www = new WWW(PHPProxy.Escape(url));
            yield return(www);

            if (www.error != null)
            {
                Debug.Log(www.error);
                yield break;
            }

            result = JsonUtility.FromJson <QueryAutocomplete>(www.text);

            if (result.status != "OK")
            {
                Debug.Log(result.error_message);
                yield break;
            }
        }
        else
        {
            result = null;
        }

        ClearDropdown();
        if (result != null)
        {
            AddItems(result);
        }
        if (isSearchSelected)
        {
            ShowDropdown();
        }

        input.MoveTextEnd(false);

        coroutine = null;
    }