android - App crashing on screen rotate -



android - App crashing on screen rotate -

my app keeps crashing when rotate screen.

here error getting:

06-24 14:43:29.531 25869-25869/com.rcd.mypr e/androidruntime﹕ fatal exception: main process: com.rcd.mypr, pid: 25869 java.lang.runtimeexception: unable start activity componentinfo{com.rcd.mypr/com.rcd.mypr.workouts.workoutsactivity}: android.view.inflateexception: binary xml file line #7: error inflating class fragment @ android.app.activitythread.performlaunchactivity(activitythread.java:2209) @ android.app.activitythread.handlelaunchactivity(activitythread.java:2269) @ android.app.activitythread.handlerelaunchactivity(activitythread.java:3819) @ android.app.activitythread.access$900(activitythread.java:139) @ android.app.activitythread$h.handlemessage(activitythread.java:1216) @ android.os.handler.dispatchmessage(handler.java:102) @ android.os.looper.loop(looper.java:136) @ android.app.activitythread.main(activitythread.java:5102) @ java.lang.reflect.method.invokenative(native method) @ java.lang.reflect.method.invoke(method.java:515) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:779) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:595) @ dalvik.system.nativestart.main(native method) caused by: android.view.inflateexception: binary xml file line #7: error inflating class fragment @ android.view.layoutinflater.createviewfromtag(layoutinflater.java:713) @ android.view.layoutinflater.rinflate(layoutinflater.java:755) @ android.view.layoutinflater.inflate(layoutinflater.java:492) @ android.view.layoutinflater.inflate(layoutinflater.java:397) @ android.view.layoutinflater.inflate(layoutinflater.java:353) @ com.android.internal.policy.impl.phonewindow.setcontentview(phonewindow.java:290) @ android.app.activity.setcontentview(activity.java:1937) @ android.support.v7.app.actionbaractivity.supersetcontentview(actionbaractivity.java:216) @ android.support.v7.app.actionbaractivitydelegateics.setcontentview(actionbaractivitydelegateics.java:110) @ android.support.v7.app.actionbaractivity.setcontentview(actionbaractivity.java:76) @ com.rcd.mypr.workouts.workoutsactivity.oncreate(workoutsactivity.java:30) @ android.app.activity.performcreate(activity.java:5248) @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1110) @ android.app.activitythread.performlaunchactivity(activitythread.java:2173)             at android.app.activitythread.handlelaunchactivity(activitythread.java:2269)             at android.app.activitythread.handlerelaunchactivity(activitythread.java:3819)             at android.app.activitythread.access$900(activitythread.java:139)             at android.app.activitythread$h.handlemessage(activitythread.java:1216)             at android.os.handler.dispatchmessage(handler.java:102)             at android.os.looper.loop(looper.java:136)             at android.app.activitythread.main(activitythread.java:5102)             at java.lang.reflect.method.invokenative(native method)             at java.lang.reflect.method.invoke(method.java:515)             at com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:779)             at com.android.internal.os.zygoteinit.main(zygoteinit.java:595)             at dalvik.system.nativestart.main(native method) caused by: java.lang.illegalstateexception: fragment com.rcd.mypr.workouts.workoutsfragment did not create view. @ android.app.activity.oncreateview(activity.java:4826) @ android.view.layoutinflater.createviewfromtag(layoutinflater.java:689)             at android.view.layoutinflater.rinflate(layoutinflater.java:755)             at android.view.layoutinflater.inflate(layoutinflater.java:492)             at android.view.layoutinflater.inflate(layoutinflater.java:397)             at android.view.layoutinflater.inflate(layoutinflater.java:353)             at com.android.internal.policy.impl.phonewindow.setcontentview(phonewindow.java:290)             at android.app.activity.setcontentview(activity.java:1937)             at android.support.v7.app.actionbaractivity.supersetcontentview(actionbaractivity.java:216)             at android.support.v7.app.actionbaractivitydelegateics.setcontentview(actionbaractivitydelegateics.java:110)             at android.support.v7.app.actionbaractivity.setcontentview(actionbaractivity.java:76)             at com.rcd.mypr.workouts.workoutsactivity.oncreate(workoutsactivity.java:30)             at android.app.activity.performcreate(activity.java:5248)             at android.app.instrumentation.callactivityoncreate(instrumentation.java:1110)             at android.app.activitythread.performlaunchactivity(activitythread.java:2173)             at android.app.activitythread.handlelaunchactivity(activitythread.java:2269)             at android.app.activitythread.handlerelaunchactivity(activitythread.java:3819)             at android.app.activitythread.access$900(activitythread.java:139)             at android.app.activitythread$h.handlemessage(activitythread.java:1216)             at android.os.handler.dispatchmessage(handler.java:102)             at android.os.looper.loop(looper.java:136)             at android.app.activitythread.main(activitythread.java:5102)             at java.lang.reflect.method.invokenative(native method)             at java.lang.reflect.method.invoke(method.java:515)             at com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:779)             at com.android.internal.os.zygoteinit.main(zygoteinit.java:595)             at dalvik.system.nativestart.main(native method)

here workoutsactivity oncreate

@override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_workouts); actionbar actionbar = getsupportactionbar(); actionbar.setdisplayhomeasupenabled(false); overridependingtransition(r.anim.right_slide_in, r.anim.right_slide_out); // fragment bodyfragment fragment = new workoutsfragment(); benchmarkfragment = new thebenchmarkgirlslistfragment(); if (fragment != null) { fragmentmanager.begintransaction() .replace(r.id.workoutslistfragment, fragment, tag_fragment_heroes) .commit(); } else { // error in creating fragment log.e("mainactivity", "error in creating fragment"); } }

here workoutsfragment creating list of workouts

package com.rcd.mypr.workouts; import android.app.fragment; import android.content.context; import android.database.cursor; import android.os.bundle; import android.support.v4.widget.simplecursoradapter; import android.util.log; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup; import android.widget.listview; import com.rcd.mypr.r; public class workoutsfragment extends fragment { workoutsdatabasehelper db; simplecursoradapter adapter; listview listcontent; cursor cursor; private context mcontext; workoutsadapter workoutsadapter; public workoutsfragment() { } @override public view oncreateview(layoutinflater inflater, viewgroup container, bundle savedinstancestate) { mcontext = getactivity(); db = new workoutsdatabasehelper(mcontext); view rootview = inflater.inflate(r.layout.fragment_workouts_list, container, false); listcontent = (listview) rootview.findviewbyid(r.id.list); // create adapter workoutsadapter = new workoutsadapter(mcontext, cursor); // set adapter listview listcontent.setadapter(workoutsadapter); homecoming rootview; } private void initviews() { //typeface tf = typeface.createfromasset(mcontext.getassets(),"roboto-light.ttf"); } private void additemstolist() { cursor cursor = db.getworkoutnames(); log.d("history.java", "finished cursor cursor = db.getalllogs();"); string[] = {"workouts_name"}; int[] = {r.id.tv_label}; adapter = new simplecursoradapter(mcontext, r.layout.fragment_workouts_list_single_item, cursor, from, to, 0); listcontent.setadapter(adapter); } /*public void onresume(){ super.onresume(); workoutsadapter = new workoutsadapter(mcontext, cursor); listcontent.setadapter(workoutsadapter); }*/ public void onsaveinstancestate(bundle savedstate) { super.onsaveinstancestate(savedstate); } }

activity_workouts.xml

<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <fragment android:id="@+id/workoutslistfragment" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" class="com.rcd.mypr.workouts.workoutsfragment" ></fragment> </linearlayout>

fragment_workouts_list.xml

<?xml version="1.0" encoding="utf-8"?><!-- copyright (c) 2012 android open source project licensed under apache license, version 2.0 (the "license"); may not utilize file except in compliance license. may obtain re-create of license @ http://www.apache.org/licenses/license-2.0 unless required applicable law or agreed in writing, software distributed under license distributed on "as is" basis, without warranties or conditions of kind, either express or implied. see license specific language governing permissions , limitations under license. --> <framelayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/darkgray"> <listview android:id="@+id/list" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_marginleft="6dp" android:layout_marginright="6dp" android:divider="@null" android:dividerheight="0dp" android:cliptopadding="false" android:scrollbarstyle="outsideoverlay" android:layout_weight="1" android:orientation="vertical"></listview> </framelayout>

i think has activity_workouts.xml

i tried changing framelayout no fragment , still loads list, still crash on rotate.

any suggestions?

thanks!

i changed activity_workouts.xml from:

<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <fragment android:id="@+id/workoutslistfragment" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" class="com.rcd.mypr.workouts.workoutsfragment" ></fragment> </linearlayout>

to:

<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/workoutslistfragment" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > </linearlayout>

android android-fragments screen-rotation

Comments

Popular posts from this blog

model view controller - MVC Rails Planning -

ruby on rails - Devise Logout Error in RoR -

html - Submenu setup with jquery and effect 'fold' -