If I put spinner in my ListView
main file, setOnItemSelectedListener
is called like normal.
Just like title says, if I put the spinner into my ListView
header, it is not. Here is config:
ListView listView = getListView();
listView.setDivider(null);
LayoutInflater inflater = getActivity().getLayoutInflater();
ViewGroup header = (ViewGroup) inflater.inflate(
R.layout.mastercat_header, listView, false);
listView.addHeaderView(header, null, false);
sort = (Spinner) getActivity().findViewById(R.id.spinner1);
strings = getActivity().getResources().getStringArray(
R.array.sorting_cats);
sAdapter = new SpinnerSortAdapter(getActivity(),
android.R.layout.simple_spinner_item, strings);
sAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sort.setAdapter(sAdapter);
sort.setOnItemSelectedListener(new MyOnItemSelectedListener()); // Not working properly.
public class MyOnItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent, View view, int pos,
long id) {
if (pos == 0) {
//stuff
}
if (pos == 1) {
// stuff
}
}
public void onNothingSelected(AdapterView<?> parent) {
// Do nothing.
}
}
Additional info: This listview is part of slider menu in jfeinstien's SlidingMenu
library. It is also a Fragment
.
Did I find a bug or is my code wrong?