Skip to content
This repository has been archived by the owner on Jun 5, 2018. It is now read-only.

Problems with TimePicker in HoloEverywhere #121

Closed
ghost opened this issue Oct 5, 2012 · 1 comment
Closed

Problems with TimePicker in HoloEverywhere #121

ghost opened this issue Oct 5, 2012 · 1 comment

Comments

@ghost
Copy link

ghost commented Oct 5, 2012

I am using HoloEverywhere (which is making my app look great on all devices!) which I downloaded 2 days ago.

I have an Activity class that uses a TimePicker dialog.

The Activity is declared as:

Activity:
public class CalendarItemAddActivity extends com.WazaBe.HoloEverywhere.sherlock.SActivity

The only HoloEverywhere imports I'm using are as follows. These work just fine with the DatePicker dialog.
import com.WazaBe.HoloEverywhere.app.ProgressDialog;
import com.WazaBe.HoloEverywhere.app.DatePickerDialog.OnDateSetListener;
import com.WazaBe.HoloEverywhere.app.TimePickerDialog;
import com.WazaBe.HoloEverywhere.app.TimePickerDialog.OnTimeSetListener;
import com.WazaBe.HoloEverywhere.widget.AdapterView;
import com.WazaBe.HoloEverywhere.widget.AdapterView.OnItemSelectedListener;
import com.WazaBe.HoloEverywhere.widget.Toast;
import com.WazaBe.HoloEverywhere.widget.Spinner;
import com.WazaBe.HoloEverywhere.widget.TimePicker;
import com.WazaBe.HoloEverywhere.widget.DatePicker;

When testing and I attempt to open the TimePicker, the app crashes with the following stacktrace:

E/AndroidRuntime(4299): FATAL EXCEPTION: main
10-05 08:58:48.441: E/AndroidRuntime(4299): android.view.InflateException: Binary XML file line #2: Error inflating class com.WazaBe.HoloEverywhere.widget.TimePicker
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.LayoutInflater.createView(LayoutInflater.java:518)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.WazaBe.HoloEverywhere.LayoutInflater.onCreateView(LayoutInflater.java:140)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.LayoutInflater.inflate(LayoutInflater.java:386)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.WazaBe.HoloEverywhere.LayoutInflater.inflate(LayoutInflater.java:67)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.WazaBe.HoloEverywhere.app.TimePickerDialog.(TimePickerDialog.java:45)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.WazaBe.HoloEverywhere.app.TimePickerDialog.(TimePickerDialog.java:57)
10-05 08:58:48.441: E/AndroidRuntime(4299): at app.iKonic.Mail.Calendar.CalendarItemAddActivity$11.onClick(CalendarItemAddActivity.java:596)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.View.performClick(View.java:2533)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.View$PerformClick.run(View.java:9299)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.os.Handler.handleCallback(Handler.java:587)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.os.Handler.dispatchMessage(Handler.java:92)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.os.Looper.loop(Looper.java:150)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.app.ActivityThread.main(ActivityThread.java:4385)
10-05 08:58:48.441: E/AndroidRuntime(4299): at java.lang.reflect.Method.invokeNative(Native Method)
10-05 08:58:48.441: E/AndroidRuntime(4299): at java.lang.reflect.Method.invoke(Method.java:507)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
10-05 08:58:48.441: E/AndroidRuntime(4299): at dalvik.system.NativeStart.main(Native Method)
10-05 08:58:48.441: E/AndroidRuntime(4299): Caused by: java.lang.reflect.InvocationTargetException
10-05 08:58:48.441: E/AndroidRuntime(4299): at java.lang.reflect.Constructor.constructNative(Native Method)
10-05 08:58:48.441: E/AndroidRuntime(4299): at java.lang.reflect.Constructor.newInstance(Constructor.java:415)
10-05 08:58:48.441: E/AndroidRuntime(4299): at android.view.LayoutInflater.createView(LayoutInflater.java:505)
10-05 08:58:48.441: E/AndroidRuntime(4299): ... 20 more
10-05 08:58:48.441: E/AndroidRuntime(4299): Caused by: java.lang.NullPointerException
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.WazaBe.HoloEverywhere.widget.TimePicker.setContentDescriptions(TimePicker.java:314)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.WazaBe.HoloEverywhere.widget.TimePicker.(TimePicker.java:222)
10-05 08:58:48.441: E/AndroidRuntime(4299): at com.WazaBe.HoloEverywhere.widget.TimePicker.(TimePicker.java:104)
10-05 08:58:48.441: E/AndroidRuntime(4299): ... 23 more

Since DatePicker is working great, and it had a custom DatePicker class, I created a custom TimePicker Class, as follows:

import android.content.Context;

import com.WazaBe.HoloEverywhere.app.TimePickerDialog;

class EventTimePickerDialog extends TimePickerDialog {

public EventTimePickerDialog(Context context, OnTimeSetListener callBack,
        int hourOfDay, int minute, boolean is24HourView) {
    super(context, callBack, hourOfDay, minute, is24HourView);
}

}

This changed imports in my Activity that uses TimePicker:
import com.WazaBe.HoloEverywhere.app.ProgressDialog;
import com.WazaBe.HoloEverywhere.app.DatePickerDialog.OnDateSetListener;
import com.WazaBe.HoloEverywhere.app.TimePickerDialog.OnTimeSetListener;
import com.WazaBe.HoloEverywhere.widget.AdapterView;
import com.WazaBe.HoloEverywhere.widget.AdapterView.OnItemSelectedListener;
import com.WazaBe.HoloEverywhere.widget.Toast;
import com.WazaBe.HoloEverywhere.widget.Spinner;
import com.WazaBe.HoloEverywhere.widget.TimePicker;
import com.WazaBe.HoloEverywhere.widget.DatePicker;

However, I'm receiving the same error:
10-05 09:12:23.056: E/AndroidRuntime(4862): FATAL EXCEPTION: main
10-05 09:12:23.056: E/AndroidRuntime(4862): android.view.InflateException: Binary XML file line #2: Error inflating class com.WazaBe.HoloEverywhere.widget.TimePicker
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.LayoutInflater.createView(LayoutInflater.java:518)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.WazaBe.HoloEverywhere.LayoutInflater.onCreateView(LayoutInflater.java:140)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.LayoutInflater.inflate(LayoutInflater.java:386)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.WazaBe.HoloEverywhere.LayoutInflater.inflate(LayoutInflater.java:67)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.WazaBe.HoloEverywhere.app.TimePickerDialog.(TimePickerDialog.java:45)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.WazaBe.HoloEverywhere.app.TimePickerDialog.(TimePickerDialog.java:57)
10-05 09:12:23.056: E/AndroidRuntime(4862): at app.iKonic.Mail.Calendar.EventTimePickerDialog.(EventTimePickerDialog.java:11)
10-05 09:12:23.056: E/AndroidRuntime(4862): at app.iKonic.Mail.Calendar.CalendarItemAddActivity$11.onClick(CalendarItemAddActivity.java:595)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.View.performClick(View.java:2533)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.View$PerformClick.run(View.java:9299)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.os.Handler.handleCallback(Handler.java:587)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.os.Handler.dispatchMessage(Handler.java:92)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.os.Looper.loop(Looper.java:150)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.app.ActivityThread.main(ActivityThread.java:4385)
10-05 09:12:23.056: E/AndroidRuntime(4862): at java.lang.reflect.Method.invokeNative(Native Method)
10-05 09:12:23.056: E/AndroidRuntime(4862): at java.lang.reflect.Method.invoke(Method.java:507)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
10-05 09:12:23.056: E/AndroidRuntime(4862): at dalvik.system.NativeStart.main(Native Method)
10-05 09:12:23.056: E/AndroidRuntime(4862): Caused by: java.lang.reflect.InvocationTargetException
10-05 09:12:23.056: E/AndroidRuntime(4862): at java.lang.reflect.Constructor.constructNative(Native Method)
10-05 09:12:23.056: E/AndroidRuntime(4862): at java.lang.reflect.Constructor.newInstance(Constructor.java:415)
10-05 09:12:23.056: E/AndroidRuntime(4862): at android.view.LayoutInflater.createView(LayoutInflater.java:505)
10-05 09:12:23.056: E/AndroidRuntime(4862): ... 21 more
10-05 09:12:23.056: E/AndroidRuntime(4862): Caused by: java.lang.NullPointerException
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.WazaBe.HoloEverywhere.widget.TimePicker.setContentDescriptions(TimePicker.java:314)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.WazaBe.HoloEverywhere.widget.TimePicker.(TimePicker.java:222)
10-05 09:12:23.056: E/AndroidRuntime(4862): at com.WazaBe.HoloEverywhere.widget.TimePicker.(TimePicker.java:104)
10-05 09:12:23.056: E/AndroidRuntime(4862): ... 24 more

Thoughts on how to fix this? Is this a bug or am I doing something wrong in overriding the TimePicker?

Thanks!

@Prototik
Copy link
Owner

Prototik commented Oct 5, 2012

It's fixed in dev version.

@Prototik Prototik closed this as completed Oct 5, 2012
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant