Try using this inside each button layouts
android:focusable="false"
android:focusableInTouchMode="false"
and remove other thing which you are doing for this.
Also from listview.
Also remove this
android:descendantFocusability="blocksDescendants"
and this too
parent.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
((ViewGroup) v).setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);