мой proplem: Я есть функция LoadTaskList()
на MainActivity
, но в CustomAdapter я назвал LoadTaskList()
, но не активныеВызов функции из другого класса
CustomAdapter.cs
public override View GetView(int position, View convertView, ViewGroup parent)
{
LayoutInflater inflater = (LayoutInflater)mainActivity.GetSystemService(Context.LayoutInflaterService);
View view = inflater.Inflate(Resource.Layout.row, null);
TextView txtTask = view.FindViewById<TextView>(Resource.Id.task_title);
Button btnDelete = view.FindViewById<Button>(Resource.Id.btnDelete);
txtTask.Text = taskList[position];
btnDelete.Click += delegate {
string task = taskList[position];
dbHelper.deleteTask(task);
mainActivity.LoadTaskList(); // here
};
return view;
}
MainActivity.cs
public void LoadTaskList()
{
List<string> taskList = dbHelper.getTaskList();
if (mAdapter == null)
{
mAdapter = new CustomAdapter(this, taskList,dbHelper);
lstTask.Adapter = mAdapter;
}
}
Что вы имеете в виду _ «но он не активен»? _ Вы получаете сообщение об ошибке? –
Эта функция для перезагрузки ListView, но в моем случае она не перезагружает ListView, когда вы вызываете ее на CustomAdapter. – EddyLee
является 'mAdapter == null', когда вы вызываете его второй раз? duh – mihail