I have a spinner with a checkbox in it, here is the XML for the item: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight" android:padding="10dp"> <CheckBox android:id="@+id/chkBox" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Folder name" android:textColor="@color/black" android:soundEffectsEnabled="true"/> </RelativeLayout> Here is the adapter code: public class spAdapter extends BaseAdapter implements OnClickListener { private ArrayList<String> m_arySelItems = new ArrayList<String>(); private LayoutInflater m_layoutInfater; private ArrayList<String> m_aryFolders; public spAdapter(Context context, int textViewResourceId, ArrayList<String> aryFolders) { m_aryFolders = aryFolders; m_layoutInfater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); } public void add(String item) { m_aryFolders.add(item); } public void clear() { m_aryFolders.clear(); } public int getCount() { return m_aryFolders.size(); } public Object getItem(int position) { return position; } public long getItemId(int position) { return position; } public View getView(int position, View convertView, ViewGroup parent) { View vi = convertView; try{ // Get the Actual Image from the Array String strFolder = m_aryFolders.get(position); if ( vi == null ) { vi = m_layoutInfater.inflate(R.layout.spfolders, null); } CheckBox chkBox = (CheckBox)vi.findViewById(R.id.chkBox); chkBox.setText(strFolder); chkBox.setTag(strFolder); if ( m_arySelItems.contains(strFolder) ) { chkBox.setChecked(true); } chkBox.setOnClickListener(this); } catch( Exception ex ) { Log.e( TAG, ex.getMessage() ); } return vi; } @Override public void onClick(View v) { CheckBox chkBox = (CheckBox)v; String strFolder = (String)chkBox.getTag(); if ( chkBox.isChecked() ) { if ( m_arySelItems.contains(strFolder) == false ) { m_arySelItems.add(strFolder); } } else { if ( m_arySelItems.contains(strFolder) == true ) { m_arySelItems.remove(strFolder); } } } } I've done something wrong in the getView, something is missing because when I scroll off view, any selections get mixed up. Is there a good example / tutorial where I can find out how to implement this correctly? Thank you, -- Regards, Sy -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en