我的Xamarin应用程序上有一个过滤器对话框,它有一个autocompletetextview,可以为用户提供搜索项目的可搜索方式。
问题是自动完成数据将来自API,我很难找到一个有效的解决方案。
我正在关注this教程,并且在使过滤正常工作方面有点遗失。
您只想将(web api)中的数据设置到AutoCompleteTextview的Adapter中
一个简单的例子:
在活动中:
[Activity(Label = "AutoComplextActivity", MainLauncher = true)]
public class AutoComplextActivity : Activity
{
private ArrayAdapter<string> adapter;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
// Create your application here
SetContentView(Resource.Layout.autocomplext_layout);
AutoCompleteTextView acTextView = (AutoCompleteTextView)FindViewById(Resource.Id.id_autotextView);
adapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleDropDownItem1Line);
acTextView.Adapter=adapter;
GetData();
}
private void GetData()
{
//get data form web api,for example the data is below
List<string> data = new List<string>();
data.Add("beijing1");
data.Add("beijing2");
data.Add("beijing3");
data.Add("shanghai1");
data.Add("shanghai2");
data.Add("guangzhou1");
data.Add("shenzhen");
data.Add("adadadsgua");
//add data into adapter
adapter.AddAll(data);
adapter.NotifyDataSetChanged();
}
}