ListView で ボタンなどを配置すると onClick イベントが発生して、 onItemClick が呼ばれずに position どうすんだ?
って時に
@Override
public View getView(final int position, View convertView, final ViewGroup parent) {
/* だいぶ省略 */
button = (Button) convertView.findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener(){
public void onClick(View v){
((ListView) parent).performItemClick(v, position, (long)v.getId());
}
});
return convertView;
}
逆に ListView を一つにしたい時は、レイアウトに以下を設定
android:descendantFocusability="blocksDescendants"
android:descendantFocusability=”blocksDescendants”