繁体   English   中英

方法C#中的方法(Xamarin)

[英]Method inside method c# (Xamarin)

我正在使用Google指南在Xamarin制作的Android应用中创建位置建议。 我想知道如何将Java代码转换为c#,以及如何处理c#方法中的方法? 谢谢!

public Filter getFilter() {
    Filter filter = new Filter() {
        @Override
        protected FilterResults performFiltering(CharSequence constraint) {
            FilterResults filterResults = new FilterResults();
            if (constraint != null) {
                // Retrieve the autocomplete results.
                resultList = autocomplete(constraint.toString());

                // Assign the data to the FilterResults
                filterResults.values = resultList;
                filterResults.count = resultList.size();
            }
            return filterResults;
        }

        @Override
        protected void publishResults(CharSequence constraint, FilterResults results) {
            if (results != null && results.count > 0) {
                notifyDataSetChanged();
            }
            else {
                notifyDataSetInvalidated();
            }
        }};
    return filter;
}

只需创建一个新的命名类即可扩展或实现Filter (取决于它是接口还是类)。 如果您在其他地方不需要它,请使其成为嵌套类。

对于单方法接口,通常,委托是表示类型的最简单方法-我相信Xamarin使用的一个惯用法-然后您可以使用lambda表达式或匿名方法来编写“内联”实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM