Xamarin - 获取适配器的过滤器数量

时间:2015-01-22 12:52:57

标签: android xamarin

我正在使用一个带有适配器的listView,它有一个过滤器。 过滤器运行良好,并使用notifyDataSetChanged更新listView。 但现在我想显示listview项目的数量。

我试过

searchView.QueryTextChange += (sender, e) => {
                _adapter.Filter.InvokeFilter (e.NewText);
                Title = _adapter.Count; // also tryed listView.Count
            };

但它显示了上次搜索的项目数,而不是当前项。是否有像过滤器监听器那样我可以更新结果?

android - listview filter count

我看到了这个,但我怎样才能在Xamarin中实现它?

1 个答案:

答案 0 :(得分:1)

您的班级应该实施IFilterListener。然后将类实例添加到InvokeFilter方法,从而导致在过滤器完成时调用Interface方法。

class MyClass : Android.Widget.Filter.IFilterListener
{
    ...

        searchView.QueryTextChange += (sender, e) => 
        {
            _adapter.Filter.InvokeFilter(e.NewText, this);
        };

    ...

    public void OnFilterComplete(int count)
    {
        Title = count.ToString();
    } 
}