ListViewで単純なListAdapterを作成しようとしている次のコードがあります(このコードは以前に機能していましたが、これが私が何かを変更した唯一の場所です):
public BuddyListAdapter(Context context, HashMap<String, Buddy> hashMap) {
buddyList = new ArrayList<Buddy>(hashMap.values());
mInflater = LayoutInflater.from(context);
ctx = context;
}
ステップスルーしても何も起こりませんが、実行するとNullPointerException
inChoreoGrapher.doCallbacks
が発生し、空を作成ArrayList
してもクラッシュしません。
public BuddyListAdapter(Context context, HashMap<String, Buddy> hashMap) {
buddyList = new ArrayList<Buddy>();
mInflater = LayoutInflater.from(context);
ctx = context;
}
ChoreoGrapher
アプリがクラッシュするのはなぜですか?
何が問題なのか、何が悪いのかをどうやって理解するのか、私は完全に立ち往生しています。Eclipseデバッガーまたはクラッシュ情報は実際には役に立ちません。
スタックトレース全体は次のとおりです。
Thread [<1> main] (Suspended (exception NullPointerException))
Choreographer.doCallbacks(int, long) line: 558
Choreographer.doFrame(long, int) line: 525
Choreographer$FrameDisplayEventReceiver.run() line: 711
Handler.handleCallback(Message) line: 615
Choreographer$FrameHandler(Handler).dispatchMessage(Message) line: 92
Looper.loop() line: 137
ActivityThread.main(String[]) line: 4745
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]
Method.invoke(Object, Object...) line: 511
ZygoteInit$MethodAndArgsCaller.run() line: 786
ZygoteInit.main(String[]) line: 553
NativeStart.main(String[]) line: not available [native method]
私もHandler
メインの活動に参加しています。何もしていないときは、リストビューはクラッシュしません。ただし、リストビューを開く前に、すべてのコールバックを削除します。