ListViewAdapter で OnClickListener を使用すると、奇妙な結果が得られます。すべてが正常に機能しています。位置は正しく分配されます - 0,1,2,3....16,17,18...
すべての位置には、OnClickListener を持つ独自のボタンがあります。
ここで、位置 2 などの特定の位置でボタンをクリックすると、位置 2 と位置 12 で 2 つのイベントがトリガーされます。5 番目のボタンをクリックすると、5 番目と 15 番目の位置がイベントを取得します。18日なら18日と8日。等々。
何故ですか ?コードは次のとおりです。
@Override
public View getView(final int position, View cell, ViewGroup parent) {
final Holder holder;
if (cell == null){
holder = new Holder();
........
cell.setTag(holder);
}
else{
holder = (Holder)cell.getTag();
}
holder.mainButton1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
.....
}
});
return cell;
}