我正在学习 xamarin 表格。 我使用 Azure 搜索 API 查询新闻,但有时搜索结果不好,因为我的搜索代码。例如,我可以点击“cat”,但由于延迟,“ca”被发送到 API。
我想要什么:
我想在用户完成点击后启动我的搜索功能。 如果有更好的方法,我会接受。
这是我的代码:
Task tasksearch = null;
int timeDelaySearch = 1000;
void OnSearcMyNews(System.Object sender, Xamarin.Forms.TextChangedEventArgs e)
{
try {
if (tasksearch == null || tasksearch.IsCompleted)
{
tasksearch = Task.Run(async () =>
{
await Task.Delay(timeDelaySearch);
Device.BeginInvokeOnMainThread( () =>
{
searchTerm = searchTerm.ToLower();
_ = SearchNewsDataAsync(searchTerm, UserConnected.NewsLanguage);
tasksearch = null;
});
});
}
}
catch (Exception ex)
{
}
}