The ID is not a unique reference.
However, in practice, you differentiate by using the parent view.
If we consider that 'this' is an Activity, set up with a layout that contains your buttons, then:
Button button = (Button) this.findViewById( R.id.id_name );
will return the first one it finds in the layout (I think - not sure the actual behaviour is defined).
However what you might do is call findViewById
on some parent view that contains only one such instance with that ID.
LinearLayout okParent = (LinearLayout) this.findViewById( R.id.okLayout );
LinearLayout cancelParent = (LinearLayout) this.findViewById( R.id.cancelLayout );
Button okButton = (Button) okParent.findViewById( R.id.id_name );
Button cancelButton = (Button) cancelParent.findViewById( R.id.id_name );
Conceptually, this is a sort of path based lookup. You should be careful to design your layouts such that this is possible.