目前,我有一ListView
排。单击行上的任何区域,将产生ListView
单击事件。
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
this.getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
this.getListView().setMultiChoiceModeListener(new ModeCallback());
this.getListView().setOnItemClickListener(new ListViewOnItemClickListener());
} else {
// http://stackoverflow.com/questions/9754170/listview-selection-remains-persistent-after-exiting-choice-mode
this.getListView().setOnItemLongClickListener(new ListViewOnItemLongClickListener());
this.getListView().setOnItemClickListener(new ListViewOnItemClickListener());
}
现在,对于每一行,我想添加一个小按钮。点击小按钮会产生按钮点击事件,这与ListView
原来的点击事件不同。
在我的ArrayAdapter
,我曾经有
public View getView(int position, View convertView, ViewGroup parent) {
View rowView = convertView;
if (rowView == null) {
LayoutInflater inflater = activity.getLayoutInflater();
rowView = inflater.inflate(R.layout.watchlist_row_layout, null);
...
}
Button button = (Button)rowView.findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Utils.showLongToast("BUTTON CLICK");
}
});
单击按钮将产生按钮单击事件。但是,单击按钮以外的区域将不再产生任何ListView
单击事件。
我可以知道为什么会这样吗?有没有办法解决这个问题?