0

さまざまな画面サイズのレイアウトを作成しようとしています。Samsung Galaxy Tab 2 7.0で同じレイアウトをうまく表示したかったので、スマートフォン用のいくつかのボタンで基本的なレイアウトを作成し始めました。そのため、Android開発Webサイトに記載されている指示に従いました。

最初に「layout-large」フォルダを作成し、2 つ目のレイアウトを作成しましたが、今回はタブレット用で、うまくいきませんでした。その後、「layout-sw600dp」という名前のフォルダーで試してみましたが、同じ結果が得られ、クラッシュしました。デバッグモードを使用してみましたが、何らかの理由でこれも機能しません。

LogCat コードは以下のとおりです。誰かが助けてくれることを願っています。敬具

08-29 10:56:56.125: E/AndroidRuntime(6457): FATAL EXCEPTION: main
08-29 10:56:56.125: E/AndroidRuntime(6457): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.quality_of_life/com.example.quality_of_life.MainActivity}: java.lang.NullPointerException
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2097)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2122)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.ActivityThread.access$600(ActivityThread.java:140)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1228)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.os.Handler.dispatchMessage(Handler.java:99)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.os.Looper.loop(Looper.java:137)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.ActivityThread.main(ActivityThread.java:4895)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at java.lang.reflect.Method.invokeNative(Native Method)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at java.lang.reflect.Method.invoke(Method.java:511)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at dalvik.system.NativeStart.main(Native Method)
08-29 10:56:56.125: E/AndroidRuntime(6457): Caused by: java.lang.NullPointerException
08-29 10:56:56.125: E/AndroidRuntime(6457):     at com.example.quality_of_life.MainActivity.addListenerOnButton(MainActivity.java:29)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at com.example.quality_of_life.MainActivity.onCreate(MainActivity.java:20)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.Activity.performCreate(Activity.java:5163)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
08-29 10:56:56.125: E/AndroidRuntime(6457):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2061)
08-29 10:56:56.125: E/AndroidRuntime(6457):     ... 11 more
4

3 に答える 3

0

レイアウトにコンポーネントが不足していると思います。多くの画面サイズを作成し、すべてのレイアウトですべてのコントロールが存在しないことを確認する必要があります。コードを確認してください。

于 2013-08-29T09:22:10.290 に答える
0

これをコメントに投稿しますが、評判は必要ありません!

まず、 で識別されるコードを投稿していただけますかcom.example.quality_of_life.MainActivity.addListenerOnButton(MainActivity.java:29)。それがあなたの悲しみを引き起こしている線であり、おそらく何が問題なのかが明らかになるでしょう。デバッグ モードが機能しなかったという場合、コードの MainActivity の 29 行目にブレークポイントを設定しましたか?

Android デベロッパー ガイドのガイドラインに従っていますか?http://developer.android.com/guide/practices/screens_support.html

プロジェクトの /res フォルダーのスケルトンも投稿していただけないでしょうか。おそらくいくつかの手がかりも含まれているでしょう。

于 2013-08-29T09:23:23.140 に答える
0

問題は、さまざまなレイアウトでさまざまなボタンを使用していたため、メイン スクリプトがそこにないボタンを呼び出していたことです。そして、それはクラッシュしました。android:visibility="gone" でボタンを非表示にすることで問題が解決しました。

オーサーの皆様ありがとうございました

于 2013-09-04T07:00:13.927 に答える