搜索界面:
这个是用NGUI的Input做的,点击搜索框,在里面输入字符,调用change方法
public void OnSearchTextChange()
{
_searchText = _cachedView.searchInput.value.Replace (" ", "");
if (canSearchAgain && _searchText != "")
{
SendSearchRequest ();
}
else if(_searchText == "")
{
Reset();
}
}
_searchText 是输入的内容,把空格替换掉,private bool canSearchAgain = true; //控制是否可以再次搜索,当搜索一次数据没返回时不能再次搜索
private void SendSearchRequest()
{
AppManager.Instance.SearchData.SendSearchRequest(_searchText, 0, shouyeNum, SearchType.SearchAll, RecieveDataCallBack);
canSearchAgain = false;
}
这个方法里给服务器发送搜索请求,把输入内容,获取的数量,搜索类型等传给服务器,当数据返回来之后调用RecieveDataCallBack 方法。
private void RecieveDataCallBack()
{
canSearchAgain = true;
if (_searchText != AppManager.Instance.SearchData.SearchedText)
{
SendSearchRequest();
}
}
如果搜索字符和返回的搜索字符不一样,会再次发送搜索请求。
服务器返回数据的回调方法调用,是get请求里写的,当return data之后执行回调方法,用Action定义参数绑定