> I was looking through your code and have one question... what is R.layout.notes_list?
It's the id automatically generated for the "notes_list.xml" file where the layout below resides. Fred On Fri, Apr 18, 2008 at 4:38 AM, Megha Joshi <[EMAIL PROTECTED]> wrote: > I was looking through your code and have one question... what is > R.layout.notes_list? > > > On Wed, Apr 16, 2008 at 3:56 AM, Fred Janon <[EMAIL PROTECTED]> wrote: > > > I am trying to build a layout with some spinners and a list below the > > spinners. The layouts and the code work fine when I get the spinner values > > from an array resource. When I try to populate the spinners from an array, I > > get an exception, see below. Is it possible to have spinner and a list view > > in the same layout? Which adapter do I need for the spinners? > > > > Thanks > > > > Fred > > > > Uncaught handler: thread Main exiting due to uncaught exception > > java.lang.ClassCastException: Landroid/widget/Spinner; > > at > > android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:240) > > at android.widget.ArrayAdapter.getView(ArrayAdapter.java:221) > > at > > android.widget.ArrayAdapter.getMeasurementView(ArrayAdapter.java:217) > > at android.widget.AbsSpinner.onMeasure(AbsSpinner.java:230) > > at android.view.View.measure(View.java:5937) > > at > > android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2250) > > at > > android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:742) > > at > > android.widget.LinearLayout.measureVertical(LinearLayout.java:289) > > at android.widget.LinearLayout.onMeasure(LinearLayout.java:231) > > at android.view.View.measure(View.java:5937) > > at > > android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:2250) > > at > > android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:742) > > at > > android.widget.LinearLayout.measureVertical(LinearLayout.java:289) > > at android.widget.LinearLayout.onMeasure(LinearLayout.java:231) > > at android.view.View.measure(View.java:5937) > > at android.view.ViewGroup.measureChild(ViewGroup.java:2218) > > at android.widget.FrameLayout.onMeasure(FrameLayout.java:146) > > at android.view.View.measure(View.java:5937) > > at > > android.widget.LinearLayout.measureVertical(LinearLayout.java:385) > > at android.widget.LinearLayout.onMeasure(LinearLayout.java:231) > > at android.view.View.measure(View.java:5937) > > at android.view.ViewGroup.measureChild(ViewGroup.java:2218) > > at android.widget.FrameLayout.onMeasure(FrameLayout.java:146) > > at > > android.policy.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:1202) > > at android.view.View.measure(View.java:5937) > > at android.view.ViewRoot.performTraversals(ViewRoot.java:341) > > at android.view.ViewRoot.handleMessage(ViewRoot.java:584) > > at android.os.Handler.dispatchMessage(Handler.java:80) > > at android.os.Looper.loop(Looper.java:91) > > at android.app.ActivityThread.main(ActivityThread.java:3052) > > at java.lang.reflect.Method.invokeNative(Native Method) > > at java.lang.reflect.Method.invoke(Method.java:356) > > at > > android.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1547) > > at android.os.ZygoteInit.main(ZygoteInit.java:1445) > > at android.dalvik.NativeStart.main(Native Method) > > > > Layout: > > > > > > <?xml version="1.0" encoding="utf-8"?> > > <!-- layout_width="fill_parent" is needed down to the row TextView to > > get the rows to use the whole width when selected, even if the text does not > > fill up the whole line --> > > > > <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" > > android:layout_width="fill_parent" > > android:layout_height="fill_parent" > > android:orientation="vertical"> > > > > <LinearLayout android:id="@+id/TopLinearLayout" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content"> > > > > <TextView android:id="@+id/tagslabel" > > android:layout_width="wrap_content" > > android:layout_height="wrap_content" > > android:layout_weight="1" > > android:text="Tags to look for" > > android:textSize="20sp"/> > > <Button android:id="@+id/reset" > > android:layout_width="wrap_content" > > android:layout_height="wrap_content" > > android:text="Reset all tags" > > android:textSize="20sp"/> > > > > </LinearLayout> > > > > <LinearLayout android:id="@+id/TagsLinearLayout" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content" > > android:orientation="vertical"> > > > > <Spinner android:id="@+id/tag1" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content"/> > > > > <Spinner android:id="@+id/tag2" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content"/> > > > > <Spinner android:id="@+id/tag3" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content"/> > > > > <Spinner android:id="@+id/tag4" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content"/> > > > > </LinearLayout> > > > > <LinearLayout android:id="@+id/ListLinearLayout" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content"> > > > > <ListView android:id="@+id/android:list" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content"/> > > > > <TextView android:id="@+id/android:empty" > > android:layout_width="fill_parent" > > android:layout_height="wrap_content" > > android:text="No Notes!"/> > > > > </LinearLayout> > > > > </LinearLayout> > > > > > > The java code for the spinners: > > > > private void createSpinners() > > { > > Log.i("createSpinners","entry"); > > int[] spinnerIds = {R.id.tag1, R.id.tag2, R.id.tag3, R.id.tag4}; > > this.spinners = new Spinner[spinnerIds.length]; > > int i = 0; > > for (int spinnerId : spinnerIds) > > { > > Spinner spinner = (Spinner) findViewById(spinnerId); > > populateSpinner(spinner, spinnerId); > > spinner.setOnItemSelectedListener(this); > > spinners[i] = spinner; > > Log.i("createSpinners","exit"); > > } > > Log.i("createSpinners","exit"); > > } > > > > private void populateSpinner(Spinner spinner, int spinnerId) { > > Log.i("Notepadv3", "populateSpinner fetchAllTags"); > > // Get all of the rows from the database and create the item > > list > > String[] tags = mDbHelper.fetchAllTags(); > > Log.i("Notepadv3", "populateSpinner fetchAllTags done"); > > /* > > // That code works > > ArrayAdapter<CharSequence> adapter = > > ArrayAdapter.createFromResource( > > this, R.array.tags, > > android.R.layout.simple_spinner_item); > > > > adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); > > spinner.setAdapter(adapter); > > */ > > // Switching to that code, will produce an exception > > ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, > > R.layout.notes_list, spinnerId, tags); > > > > adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); > > spinner.setAdapter(adapter); > > } > > > > > > > > > > > > > > --~--~---------~--~----~------------~-------~--~----~ 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] Announcing the new M5 SDK! http://android-developers.blogspot.com/2008/02/android-sdk-m5-rc14-now-available.html For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---

