Saturday 15 January 2011

android - main Illegal State Exception -



android - main Illegal State Exception -

i cannot find problem in project. open menu 4 buttons, should bring user other activities, dont. app crashes when press button.

here menu class

package com.example.androidintermediate; import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.view; import android.view.view.onclicklistener; public class menu extends activity implements onclicklistener { string activities[] = { "activitymain", "settings", "internalstore", "reading" }; @override protected void oncreate(bundle savedinstancestate) { // todo auto-generated method stub super.oncreate(savedinstancestate); setcontentview(r.layout.menu); } @override public void onclick(view v) { // todo auto-generated method stub int id = v.getid(); (int = 0; < activities.length; i++) { if (id == getresources().getidentifier("b" + i, "id", "com.example.androidintermediate")) { intent intent = new intent("com.example.androidintermediate." + activities[i]); startactivity(intent); } } } }

logcat

11-03 20:02:54.927: d/openglrenderer(1384): enabling debug mode 0 11-03 20:02:56.267: d/androidruntime(1384): shutting downwards vm 11-03 20:02:56.267: w/dalvikvm(1384): threadid=1: thread exiting uncaught exception (group=0xa6178908) 11-03 20:02:56.271: e/androidruntime(1384): fatal exception: main 11-03 20:02:56.271: e/androidruntime(1384): java.lang.illegalstateexception: not execute method of activity 11-03 20:02:56.271: e/androidruntime(1384): @ android.view.view$1.onclick(view.java:3599) 11-03 20:02:56.271: e/androidruntime(1384): @ android.view.view.performclick(view.java:4204) 11-03 20:02:56.271: e/androidruntime(1384): @ android.view.view$performclick.run(view.java:17355) 11-03 20:02:56.271: e/androidruntime(1384): @ android.os.handler.handlecallback(handler.java:725) 11-03 20:02:56.271: e/androidruntime(1384): @ android.os.handler.dispatchmessage(handler.java:92) 11-03 20:02:56.271: e/androidruntime(1384): @ android.os.looper.loop(looper.java:137) 11-03 20:02:56.271: e/androidruntime(1384): @ android.app.activitythread.main(activitythread.java:5041) 11-03 20:02:56.271: e/androidruntime(1384): @ java.lang.reflect.method.invokenative(native method) 11-03 20:02:56.271: e/androidruntime(1384): @ java.lang.reflect.method.invoke(method.java:511) 11-03 20:02:56.271: e/androidruntime(1384): @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:793) 11-03 20:02:56.271: e/androidruntime(1384): @ com.android.internal.os.zygoteinit.main(zygoteinit.java:560) 11-03 20:02:56.271: e/androidruntime(1384): @ dalvik.system.nativestart.main(native method) 11-03 20:02:56.271: e/androidruntime(1384): caused by: java.lang.reflect.invocationtargetexception 11-03 20:02:56.271: e/androidruntime(1384): @ java.lang.reflect.method.invokenative(native method) 11-03 20:02:56.271: e/androidruntime(1384): @ java.lang.reflect.method.invoke(method.java:511) 11-03 20:02:56.271: e/androidruntime(1384): @ android.view.view$1.onclick(view.java:3594) 11-03 20:02:56.271: e/androidruntime(1384): ... 11 more 11-03 20:02:56.271: e/androidruntime(1384): caused by: android.content.activitynotfoundexception: no activity found handle intent { act=com.example.androidintermediate.activitymain } 11-03 20:02:56.271: e/androidruntime(1384): @ android.app.instrumentation.checkstartactivityresult(instrumentation.java:1622) 11-03 20:02:56.271: e/androidruntime(1384): @ android.app.instrumentation.execstartactivity(instrumentation.java:1417) 11-03 20:02:56.271: e/androidruntime(1384): @ android.app.activity.startactivityforresult(activity.java:3370) 11-03 20:02:56.271: e/androidruntime(1384): @ android.app.activity.startactivityforresult(activity.java:3331) 11-03 20:02:56.271: e/androidruntime(1384): @ android.app.activity.startactivity(activity.java:3566) 11-03 20:02:56.271: e/androidruntime(1384): @ android.app.activity.startactivity(activity.java:3534) 11-03 20:02:56.271: e/androidruntime(1384): @ com.example.androidintermediate.menu.onclick(menu.java:31) 11-03 20:02:56.271: e/androidruntime(1384): ... 14 more 11-03 20:02:58.603: i/process(1384): sending signal. pid: 1384 sig: 9

the manifest

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.androidintermediate" android:versioncode="1" android:versionname="1.0" > <uses-sdk android:minsdkversion="8" android:targetsdkversion="21" /> <application android:allowbackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/apptheme" > <activity android:name=".menu" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name=".mainactivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.activitymain" /> <category android:name="android.intent.category.default" /> </intent-filter> </activity> <activity android:name=".settings" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.settings" /> <category android:name="android.intent.category.default" /> </intent-filter> </activity> <activity android:name=".internalstorage" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.internalstorage" /> <category android:name="android.intent.category.default" /> </intent-filter> </activity> <activity android:name=".reading" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.reading" /> <category android:name="android.intent.category.default" /> </intent-filter> </activity> <activity android:name=".numbers" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.numbers" /> <category android:name="android.intent.category.default" /> </intent-filter> </activity> </application> </manifest>

you don't spell out total bundle name when create intent. this:

intent intent = new intent(menu.this, youractivity.class);

android onclick illegalstateexception

No comments:

Post a Comment