Seleccione solo un botón de radio de la vista de lista

He buscado la pregunta una y otra vez, hay muchas preguntas que he encontrado en stackoverflow pero no encontré una solución. Aquí está mi problema. Tengo una lista de elementos en una reproducción lineal como esta:

Cuando la pantalla aparece primero, el último botón de radión se selecciona automáticamente. Pero si selecciono otro botón de opción, el último botón de opción ya está en el estado seleccionado. Quiero seleccionar solo un botón de radión, pero al mismo tiempo, cuando aparece la primera pantalla, el último botón de opción se seleccionará automáticamente y el otro no se seleccionará automáticamente. Cómo puedo conseguir esto. Mi clase de adaptador es:

public class AdapterPaymentMethod extends ArrayAdapter<PaymentData> {
    private Context context;
    private boolean userSelected = false;
    ViewHolder holder;

    public AdapterPaymentMethod(Context context, int resource,
            List<PaymentData> items) {
        super(context, resource, items);
        this.context = context;
    }

    /* private view holder class */
    private class ViewHolder {
        RadioButton radioBtn;
        Button btPaymentMethod;
        // ImageView ivLine;
    }

    public View getView(final int position, View convertView, ViewGroup parent) {
        holder = null;
        PaymentData rowItem = getItem(position);
        LayoutInflater mInflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        if (convertView == null) {
            convertView = mInflater.inflate(
                    com.android.paypal.homeactivity.R.layout.list_item, null);
            holder = new ViewHolder();
            holder.radioBtn = (RadioButton) convertView
                    .findViewById(com.android.paypal.homeactivity.R.id.rdb_payment_method);
            holder.btPaymentMethod = (Button) convertView
                    .findViewById(com.android.paypal.homeactivity.R.id.bt_item_event);
            convertView.setTag(holder);
        } else
            holder = (ViewHolder) convertView.getTag();

        if(position==getCount()-1 && userSelected==false){
            holder.radioBtn.setChecked(true);
        Log.d("if position", ""+position);
        }
        else{
            holder.radioBtn.setChecked(false);
            Log.d("else position", ""+position);
        }

        holder.radioBtn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                userSelected=true;
                if(getCount()-1==position&&userSelected==true){         
                }
                else if(getCount()-2==position&&userSelected==true)
                {
                    holder.radioBtn.setChecked(true);
                }
            }
        });



        holder.radioBtn.setText(rowItem.getRdbText());
        holder.btPaymentMethod.setText(rowItem.getBtText());
        return convertView;
    }
}

Respuestas a la pregunta(4)

Su respuesta a la pregunta