横向きモードのみのタブレット ユーザーを対象としたアプリケーションを作成しています。res
そのため、 asという名前のフォルダーを作成し、layout-xlarge-land
すべてのlayout xml
ファイルをその中に入れて、layout folder
空のままにしました。マニフェスト ファイルでサポート画面の属性も設定します
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:normalScreens="false"
android:smallScreens="false" />
また、すべてのアクティビティの向きを横向きに設定しました
activity
android:name=".HomeActivity"
android:label="@string/title_activity_main"
android:screenOrientation="landscape">
</activity>
アプリケーションを起動しても、予期せず停止したというメッセージが表示されません。
しかし、アプリケーションにすべてのlayout xml
ファイルを配置すると、正常に動作します。layout folder
なぜこの種の行動をするのですか?私の見解Android system
では、最初に layout-xlarge-land
フォルダを調べて UI を取得する必要があります。見つからない場合は、「レイアウト フォルダ」を調べてください。誰かが私が正しいか間違っているかを説明できますか?
ログキャット:
08-29 12:06:15.040: E/AndroidRuntime(3468): java.lang.RuntimeException: Unable to
start activity ComponentInfo{com.abs.qpr/com.abs.qpr.LauncherActivity}:
android.content.res.Resources$NotFoundException: Resource ID #0x7f030001
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1751)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1767)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.access$1500(ActivityThread.java:122)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread$H.handleMessage(ActivityThread.java:1005)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.os.Handler.dispatchMessage(Handler.java:99)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.os.Looper.loop(Looper.java:132)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.main(ActivityThread.java:4028)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
java.lang.reflect.Method.invokeNative(Native Method)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
java.lang.reflect.Method.invoke(Method.java:491)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
dalvik.system.NativeStart.main(Native Method)
08-29 12:06:15.040: E/AndroidRuntime(3468): Caused by:
android.content.res.Resources$NotFoundException: Resource ID #0x7f030001
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.content.res.Resources.getValue(Resources.java:1014)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.content.res.Resources.loadXmlResourceParser(Resources.java:2039)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.content.res.Resources.getLayout(Resources.java:853)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.view.LayoutInflater.inflate(LayoutInflater.java:389)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.view.LayoutInflater.inflate(LayoutInflater.java:347)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:245)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.Activity.setContentView(Activity.java:1780)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
com.abs.qpr.LauncherActivity.onCreate(LauncherActivity.java:17)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
08-29 12:06:15.040: E/AndroidRuntime(3468): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1715)
08-29 12:06:15.040: E/AndroidRuntime(3468): ... 11 more`