anyone? help!!!
On Jun 22, 7:05 pm, Georgy <[email protected]> wrote:
> Hello,
>
> I am trying (as many are doing) to populate a 2nd spinner out of the
> first spinner selected item like this:
>
> //populate first spinner
> final Spinner s = (Spinner) findViewById(R.id.spinner);
> ArrayAdapter adapter = ArrayAdapter.createFromResource(
> this, R.array.universities,
> android.R.layout.simple_spinner_item);
> adapter.setDropDownViewResource
> (android.R.layout.simple_spinner_dropdown_item);
> s.setAdapter(adapter);
>
> // Initialization of the 2nd spinner
> String[] array = {"Select Building Here"};
> final Spinner s2 = (Spinner) findViewById(R.id.spinner2);
> ArrayAdapter<String> cadapter = new ArrayAdapter(this,
> android.R.layout.simple_spinner_item, array);
> cadapter.setDropDownViewResource
> (android.R.layout.simple_spinner_dropdown_item);
> s2.setAdapter(cadapter);
>
> // When user selects a university
> s2.setOnItemSelectedListener(new OnItemSelectedListener()
> {
>
> @Override
> public void onItemSelected(AdapterView<?>
> arg0, View arg1,
> int arg2, long arg3) {
>
> //Get the selected building
> String selectedItemString =
> (String) s2.getSelectedItem();
> System.out.println
> ("Building: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"+selectedItemString);
>
> }
>
> @Override
> public void onNothingSelected(AdapterView<?>
> arg0) {
> // TODO Auto-generated method stub
> }
>
> });
>
> // When user selects a university
> s.setOnItemSelectedListener(new OnItemSelectedListener() {
>
> @Override
> public void onItemSelected(AdapterView<?> arg0, View
> arg1,
> int arg2, long arg3) {
> //Get the selected university
> String selectedItemString = (String)
> s.getSelectedItem();
> System.out.println
> ("Uni: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"+selectedItemString);
>
> if(selectedItemString .equals(""))
> {
> // In case of an error so it won't crash
> nospinner();
> }
>
> else
> {
> // Find the table of the selected
> University dynamically
> finder(selectedItemString);
> }
>
> }
>
> @Override
> public void onNothingSelected(AdapterView<?> arg0) {
> // TODO Auto-generated method stub
> }
>
> });
>
> where finder() is
> protected void finder(String selectedItemString) {
>
> final Dbadapter db = new Dbadapter(this); // This creates an
> instance of the database in this class
> final Spinner s2 = (Spinner) findViewById(R.id.spinner2);
> // Access Database
> db.open();
>
> // Fix selected item to match the db
> selectedItemString = (selectedItemString).toLowerCase();
> selectedItemString = selectedItemString.replaceAll(" ","");
>
> // System.out.println("Uni: !!!!!!!!!!!!
>
> >>>>>>>>>>>>>>>>>>>>>"+selectedItemString+"<<<<<<");
>
> // Call a function to return the rows of that university
> final Cursor cur = db.getAllTitles(selectedItemString);
>
> // Get Columns
> String[] columns = new String[]{"building"};
> SimpleCursorAdapter cadapter = new
> SimpleCursorAdapter(this,
> android.R.layout.simple_spinner_item, cur,
> columns, new int[] {android.R.id.text1});
>
> // Spinner Layout and population
> cadapter.setDropDownViewResource
> (android.R.layout.simple_spinner_dropdown_item);
> s2.setAdapter(cadapter);
> db.close();
>
> }
>
> whenever the user changes the selection of the first spinner it's
> fine, whenever the changes are related to the 2nd spinner I get a
> handler exception on this line: String selectedItemString = (String)
> s2.getSelectedItem();
>
> I could get an object on selected item but not the actual String
> value.
>
> anyone could help?
>
> thanks a lot
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---