0

このコード行が機能しないのはなぜですか?

int display_width = display.getCurrent().getWidth();

ミッドレットを起動すると、次のエラーが表示されます:例外。アプリケーションが予期せず終了しました。問題を解決するには、アプリケーションプロバイダーに連絡してください。0。

なんで?

4

1 に答える 1

1

ここで何かが例外をスローしている可能性がありますが、ライブラリはユーザー フレンドリーなエラー メッセージの背後にそれを隠しています。

私の推測では、それdisplay.getCurrent()は null を返しているので、getWidth()原因はNullPointerException. これを試して:

Display myDisplay = display.getCurrent();
System.out.println(myDisplay);
int display_width = myDisplay.getWidth();

の戻り値のDisplay型が何であれ、クラスを置き換える必要があることに注意してください。display.getCurrent()

または、さらに良いことに、例外をキャッチしようとすることもできます。

try {
    int display_width = display.getCurrent().getWidth();
} catch (RuntimeException e) {
    e.printStackTrace();
    throw e;
}
于 2012-12-31T05:38:10.200 に答える