I ran into a strange problem. My application is locked on the landscape. My app is a tablet app supporting 7 inches ahead. So I created two folders under the res folder - layout-sw600dp-land and layout-sw720dp-land, and I put all my layout resources under it. It looks great when the screen rotates, works as expected. But when I turn my screen and press the home button, the android looks in the portrait folder for resource and application failures, because there is no resource in the portrait folder. Why does android look in the portrait folder even when I mentioned in the manifest that the orientation of the application is landscape. See my code below. Am I doing something wrong?
android:name="com.example.activities.fragmentActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:screenOrientation="sensorLandscape" >
</activity>
The structure of my folder is as follows:
res
layout
layout-sw600dp-land
layout-sw720dp-land
When I put my resources in the layout folder, this will prevent a crash. Therefore, it is clear that Android is looking for a folder with a portrait of resources. Can anyone help me solve this problem.
Stacktrace
07-24 16:40:00.383: E/AndroidRuntime(16041): FATAL EXCEPTION: main
07-24 16:40:00.383: E/AndroidRuntime(16041): Process: com.sample.android, PID: 16041
07-24 16:40:00.383: E/AndroidRuntime(16041): android.content.res.Resources$NotFoundException: Resource ID
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.content.res.Resources.getValue(Resources.java:1123)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.content.res.Resources.loadXmlResourceParser(Resources.java:2309)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.content.res.Resources.getLayout(Resources.java:939)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.view.LayoutInflater.inflate(LayoutInflater.java:395)
07-24 16:40:00.383: E/AndroidRuntime(16041): at com.sample.android.fragments.sampleFragment.onCreateView(sampleFragment.java:189)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.support.v4.app.Fragment.performCreateView(Fragment.java:1478)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:927)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1460)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:440)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.os.Handler.handleCallback(Handler.java:733)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.os.Handler.dispatchMessage(Handler.java:95)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.os.Looper.loop(Looper.java:136)
07-24 16:40:00.383: E/AndroidRuntime(16041): at android.app.ActivityThread.main(ActivityThread.java:5001)
07-24 16:40:00.383: E/AndroidRuntime(16041): at java.lang.reflect.Method.invokeNative(Native Method)
07-24 16:40:00.383: E/AndroidRuntime(16041): at java.lang.reflect.Method.invoke(Method.java:515)
07-24 16:40:00.383: E/AndroidRuntime(16041): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
07-24 16:40:00.383: E/AndroidRuntime(16041): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
07-24 16:40:00.383: E/AndroidRuntime(16041): at dalvik.system.NativeStart.main(Native Method)
source
share