@Override
          public void onItemClick(AdapterView<?> parent, View row, int position, long itemId) {
            // Each item in DragSortListView is wrapped with DragSortItemView.
            // Iterating the children to find the enclosed UserRowView
            DragSortItemView dragSortItemView = (DragSortItemView) row;
            View userRowView = null;
            for (int i = 0; i < dragSortItemView.getChildCount(); i++) {
              if (dragSortItemView.getChildAt(i) instanceof UserRowView) {
                userRowView = dragSortItemView.getChildAt(i);
              }
            }
            if (userRowView == null) {
              return;
            }
            NextOtpButtonListener clickListener = (NextOtpButtonListener) userRowView.getTag();
            View nextOtp = userRowView.findViewById(R.id.next_otp);
            if ((clickListener != null) && nextOtp.isEnabled()) {
              clickListener.onClick(userRowView);
            }
            userList.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_SELECTED);
          }
Called when the activity is first created.
java/com/google/android/apps/authenticator/AuthenticatorActivity.java