Hi all.
I need some help with the TimePicker Widget. I have a Screen with 2
Tabs. One one tab there is one or more TimePicker Widgets nested in a
LinearLayout nested in a LinearLayout nested in a LinearLayout nested
in a ScrollView :-)

The TimePicker(s) are generated like so:

        private View createDateWidget(String displayname, String value) {
                Context ctx = mCtx;
                String[] datetime = value.split(" ");
                Log.d(LOG_TAG,value);
                String[] date = datetime[0].split("-");
                String[] time = datetime[1].split(":");

                LinearLayout layout = createLayout(displayname);
                LinearLayout innerlayout = new LinearLayout(ctx);
                innerlayout.setLayoutParams(PARAMS_FILL_WRAP);
                innerlayout.setOrientation(LinearLayout.HORIZONTAL);
                layout.addView(innerlayout);

                int day = Integer.parseInt(date[2]);
                int month = Integer.parseInt(date[1]);
                int year = Integer.parseInt(date[0]);
                Button pickDate = new Button(ctx);
                pickDate.setLayoutParams(PARAMS_WRAP_WRAP);
                pickDate.setText(date[2]+"."+date[1]+"."+date[0]);
                final DatePickerDialog dpd = new DatePickerDialog(ctx, new
DatePicker.OnDateSetListener(){
                        public void dateSet(DatePicker arg0, int arg1, int 
arg2, int arg3)
{
                                Log.d(LOG_TAG, "Date changed on "+arg0+":
"+arg1+"-"+arg2+"-"+arg3);
                        }
                }, year, month,day, Calendar.MONDAY);
        pickDate.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                dpd.show();
            }
        });

                TimePicker tp = new TimePicker(ctx, null, null);
                tp.setIs24HourView(true);
                tp.setCurrentHour(Integer.parseInt(time[0]));
                tp.setCurrentMinute(Integer.parseInt(time[1]));
                tp.setLayoutParams(PARAMS_WRAP_WRAP);
                tp.setOnTimeChangedListener(new 
TimePicker.OnTimeChangedListener(){
                        public void timeChanged(TimePicker arg0, int arg1, int 
arg2) {
                                Log.d(LOG_TAG, "Time changed on "+arg0+": 
"+arg1+":"+arg2);
                        }
                });
                innerlayout.addView(pickDate);
                innerlayout.addView(tp);
                return layout;
        }

So there is a Button that leads to a DatePickerDialog and a TimePicker
in one line. If i want to change the hour everything works fine. As
soon as I want to change the minutes (either via up-down-buttons or
via number keys) the system throws a StackOverflowError that looks
like this:

ERROR/AndroidRuntime(856): java.lang.StackOverflowError
ERROR/AndroidRuntime(856):     at
android.graphics.Canvas.drawText(Canvas.java:889)
ERROR/AndroidRuntime(856):     at android.text.Layout.draw(Layout.java:
282)
ERROR/AndroidRuntime(856):     at
android.widget.TextView.onDraw(TextView.java:1875)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4574)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.widget.FrameLayout.draw(FrameLayout.java:208)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.widget.FrameLayout.draw(FrameLayout.java:208)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4662)
ERROR/AndroidRuntime(856):     at
android.widget.FrameLayout.draw(FrameLayout.java:208)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.widget.FrameLayout.draw(FrameLayout.java:208)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.widget.FrameLayout.draw(FrameLayout.java:208)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.widget.FrameLayout.draw(FrameLayout.java:208)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4550)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.drawChild(ViewGroup.java:1088)
ERROR/AndroidRuntime(856):     at
android.view.ViewGroup.dispatchDraw(ViewGroup.java:914)
ERROR/AndroidRuntime(856):     at android.view.View.draw(View.java:
4578)
ERROR/AndroidRuntime(856):     at
android.widget.FrameLayout.draw(FrameLayout.java:208)
ERROR/AndroidRuntime(856):     at
android.view.ViewRoot.draw(ViewRoot.java:531)
ERROR/AndroidRuntime(856):     at
android.view.ViewRoot.performTraversals(ViewRoot.java:429)
ERROR/AndroidRuntime(856):     at
android.view.ViewRoot.handleMessage(ViewRoot.java:584)
ERROR/AndroidRuntime(856):     at
android.os.Handler.dispatchMessage(Handler.java:80)
ERROR/AndroidRuntime(856):     at android.os.Looper.loop(Looper.java:
91)
ERROR/AndroidRuntime(856):     at
android.app.ActivityThread.main(ActivityThread.java:3052)
ERROR/AndroidRuntime(856):     at
java.lang.reflect.Method.invokeNative(Native Method)
ERROR/AndroidRuntime(856):     at
java.lang.reflect.Method.invoke(Method.java:356)
ERROR/AndroidRuntime(856):     at android.os.ZygoteInit
$MethodAndArgsCaller.run(ZygoteInit.java:1547)
ERROR/AndroidRuntime(856):     at
android.os.ZygoteInit.main(ZygoteInit.java:1445)
ERROR/AndroidRuntime(856):     at
android.dalvik.NativeStart.main(Native Method)

do i use too much layout-components? Why does the stack overflow? i
don't use any recursion. is this a bug?
Please halp! thanx
Simon
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to