2014年12月20日土曜日

NullPointerException TimePicker.updateInputState

FATAL EXCEPTION: main
Process: XXXXXXXX, PID: 8966
java.lang.NullPointerException
    at android.widget.TimePicker.updateInputState(TimePicker.java:695)

Android 4.x系において、TimePickerを表示&操作すると上記エラーが発生する。

原因は不正確かもしれませんが、setVisibility(View.GONE)をアプリ開始時に適用したためではないかと推測しています。

ThemeをHolo又は無しに設定すれば上記エラーを回避することはできるが、見た目が不細工になり、不細工すぎて、端末利用者はTimePickerを操作できない。

Themeの変更により、上記エラーが回避できるということはバグが原因であろうと思います。今からでも遅くはないので直して欲しいです。

(参考)

2014年12月7日日曜日

Error inflating class fragment

Error inflating class fragment

回答は次のサイトに掲載されています。複数の原因があるということですね。
Error inflating class fragment

私の場合は、onCreateViewメソッドの時点において、activityを操作しようとしたため上記エラーが発生しました。

onAttachメソッドの時点においてactivityを取得できるため、onAttachメソッド以降はactivityを操作できると思い込みました。

正しくは、onActivityCreatedメソッド以降でactivityを取得&操作するようにしなければならないということですね。

では、何故onAttachメソッドの時点においてactivityが取得できてしまうのかは疑問が残る。