Android ListView中的SetOnClickListener

Android ListView中的SetOnClickListener,android,.net,xamarin.android,Android,.net,Xamarin.android,早上好,我实现了一个listView,其中隐藏了一些信息,还有一个按钮,但是我在使用MonoDroid时遇到了按钮单击事件的问题,我实现了接口OnClickListener(),我的问题是如果我设置了button.setOnclickListener(new MyClassClick())在列表视图适配器内,每次滚动列表视图时,它都会创建一个对象,并且不能重用以前创建的对象,可以检查按钮是否已经有一个与该对象链接的操作?键入一个GetOnclickListener()? 公共覆盖视图GetVi

早上好,我实现了一个
listView
,其中隐藏了一些信息,还有一个按钮,但是我在使用MonoDroid时遇到了按钮单击事件的问题,我实现了接口
OnClickListener()
,我的问题是如果我设置了
button.setOnclickListener(new MyClassClick())
列表视图
适配器内,每次滚动
列表视图
时,它都会创建一个对象,并且不能重用以前创建的对象,可以检查按钮是否已经有一个与该对象链接的操作?键入一个
GetOnclickListener()

公共覆盖视图GetView(int位置、视图转换视图、视图组父视图){

var项目=产品[位置];
ViewHolderProdutos viewHolder;
var-view=convertView;
如果(视图==null)
{
视图=context.LayoutInflater.Inflate(Resource.Layout.ProdutoListItem,父项,false);
viewHolder=新的viewHolder();
视图持有者。Inicializa(视图);
view.Tag=viewHolder;
}
ProductsBase prod=(ProductsBase)productList[位置];
viewHolder=(viewHolder)view.Tag;
viewHolder.Bind(prod);
var btnIncluir=view.findviewbyd(Resource.Id.btnIncluir);
//事件单击do Botão Incluir
btnIncluir.SetOnClickListener(新的OnClickButton(productList[position].pro_codigo.ToString(),parent.Context));
返回视图;
}


抱歉,如果文本混淆,我的英语不好

在您的
适配器
s
GetView
方法中,您只需在
convertView
null
时设置
OnClickListener

public override View GetView(int position, View convertView, ViewGroup parent)
{
    var view = convertView;

    if (null == view)
    {
        //1. inflate or create your views here
        //2. Set OnClickListeners
    }

    //populate views with Adapter item data
}

我不确定我是否理解您的问题,但您可以保留对新类Click的引用,如果它已初始化,则无需执行任何操作。您可以发布一些示例代码吗?我不清楚您的问题来自于描述。
public override View GetView(int position, View convertView, ViewGroup parent)
{
    var view = convertView;

    if (null == view)
    {
        //1. inflate or create your views here
        //2. Set OnClickListeners
    }

    //populate views with Adapter item data
}