Implémenter plusieurs écouteurs d'événement dans le même fragment - Android

J'ai un fragment qui se compose d'un compteur et d'un bouton. Vous sélectionnez l'une des quatre options avec la touche de navigation, puis sur le bouton vous amène à la prochaine activité.

Afin de mettre en œuvre le spinner j'ai besoin pour mettre en œuvre onItemSelectedListener sur le Fragment, mais à utiliser le bouton j'ai besoin pour mettre en œuvre onClickListener.
Mais je ne peux pas faire les deux???
Je me serais attendu à ce sera vraiment une chose simple et la nécessité d'avoir plusieurs différents écouteurs d'Événement sur un point de Vue doit être commun, alors comment voulez-vous mettre en œuvre?

Voici le code que j'utilise:-

public class FragmentTypeSelect s'étend Fragment
met en œuvre OnItemSelectedListener
{

@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container, Bundle savedInstanceState){
//set the view so that it can be referenced
View theView = inflater.inflate(R.layout.fragment_type_select, 
container,false);
//set OnClickListener for the button
setUpClickListener(theView,R.id.but_select);
//===============================
//NEW TYPE SPINNER
//===============================
Spinner spinner = (Spinner) theView.findViewById(R.id.new_type_spinner);
spinner.setOnItemSelectedListener((OnItemSelectedListener) this);
//Create an ArrayAdapter using the string array and a default spinner layout
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(getActivity(), 
R.array.types_array, android.R.layout.simple_spinner_item);
//Specify the layout to use when the list of choices appears
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//Apply the adapter to the spinner
spinner.setAdapter(adapter);
return theView;
}
public void onItemSelected(AdapterView<?> parent, View view,
int pos, long id)
{
TextView headingText = (TextView)getView().findViewById(R.id.new_diet_type_text_heading);
TextView detailText = (TextView)getView().findViewById(R.id.new_diet_type_text_detail);
if (pos == 0)   
{
headingText.setText(R.string.heading_type_1);
detailText.setText(R.string.detail_type_1);
}
if (pos == 1)   
{
headingText.setText(R.string.heading_type_2);
detailText.setText(R.string.detail_type_2);
}
if (pos == 2)
{
headingText.setText(R.string.heading_type_3);
detailText.setText(R.string.detail_type_3);
}
if (pos == 3) 
{
headingText.setText(R.string.heading_type_4);
detailText.setText(R.string.detail_type_4);
}
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
//TODO Auto-generated method stub
}
public void onClick(View view){
Toast.makeText(getActivity(), "Clicked", Toast.LENGTH_LONG).show();
}
private void setUpClickListener(View theView, int childViewID) {
View childView = theView.findViewById(childViewID);
childView.setOnClickListener((OnClickListener) this);
}

}

L'origine, j'ai juste eu le spinner et a obtenu ce travail très bien. J'ai ensuite essayé de mettre le bouton de fonction avec l'ensemble OnClickListener dans le onCreateView et d'ajouter la onClick et setUpClickListener méthodes.
C'est exactement comment je l'ai fait ailleurs, mais dans d'autres cas, je n'ai pas eu d'autres événements pour gérer et ont fait de la classe de mettre en œuvre la onClickListener. Java ne supporte pas plusieurs implémente l'interface (ce que je comprends) et d'où ma question.

Espère que vous pouvez aider. Je suis probablement un peu épaisse, mais je suis encore assez nouveau à l'ensemble de l'OO ainsi que sur Android.

source d'informationauteur RobT