안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요. 어제부터 optionmenu와 contextmenu랑 싸우고 있습니다.
그런데 이제 마지막 단계에서 걸려버리네요.
소스코드는 아래와 같습니다.
@Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo){ getMenuInflater().inflate(R.menu.context_menu, menu); super.onCreateContextMenu(menu, v, menuInfo); } @Override public boolean onContextItemSelected(MenuItem item) { list = (ListView)findViewById(android.R.id.list); AdapterContextMenuInfo info = null; info = (AdapterContextMenuInfo)item.getMenuInfo(); switch(item.getItemId()){ case R.id.insert: Intent intent = new Intent(getApplicationContext(), DbModify.class); intent.putExtra("SendData", info.id); //info.id는 id 값으로 3을 DbModify로 전달합니다. startActivity(intent); //여기서 에러가 발생합니다. break; case R.id.delete: dbAdapter.deleteNote_context(info.id); break; } Cursor c = dbAdapter.fetchAllNotes(); startManagingCursor(c); mAdapter.changeCursor(c); return true; }
위에서 Intent 관련한 아래 코드는 DB에 있는 특정 레코드 값을 다른 창으로 출력해줄 때, 사용했던 코드 입니다.
그래서 이번에도 contextmenu에서 사용해 봤는데..잘 되지 않네요. 고수님들의 조언을 기다리겠습니다.
Intent intent = new Intent(getApplicationContext(), DbModify.class);
intent.putExtra("SendData", info.id);
startActivity(intent);
LogCat에서 보여주는 오류 내용 입니다.
08-27 05:36:35.701: INFO/ActivityManager(53): Displayed activity com.example.pointcardMain/.PointcardName: 952 ms (total 952 ms)
08-27 05:36:47.961: INFO/ActivityManager(53): Starting activity: Intent { cmp=com.example.pointcardMain/.DbModify (has extras) }
08-27 05:36:56.062: DEBUG/AndroidRuntime(333): Shutting down VM
08-27 05:36:56.062: WARN/dalvikvm(333): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
08-27 05:36:56.062: ERROR/AndroidRuntime(333): Uncaught handler: thread main exiting due to uncaught exception
08-27 05:36:56.241: ERROR/AndroidRuntime(333): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.pointcardMain/com.example.pointcardMain.DbModify}; have you declared this activity in your AndroidManifest.xml?
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1404)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1378)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.app.Activity.startActivityForResult(Activity.java:2749)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.app.Activity.startActivity(Activity.java:2855)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.example.pointcardMain.PointcardName.onContextItemSelected(PointcardName.java:90)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.app.Activity.onMenuItemSelected(Activity.java:2174)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.android.internal.policy.impl.PhoneWindow$ContextMenuCallback.onMenuItemSelected(PhoneWindow.java:2731)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:139)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:855)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.android.internal.view.menu.MenuDialogHelper.onClick(MenuDialogHelper.java:129)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertController.java:884)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.widget.AdapterView.performItemClick(AdapterView.java:284)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.widget.ListView.performItemClick(ListView.java:3285)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.widget.AbsListView$PerformClick.run(AbsListView.java:1640)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.os.Handler.handleCallback(Handler.java:587)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.os.Handler.dispatchMessage(Handler.java:92)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.os.Looper.loop(Looper.java:123)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at android.app.ActivityThread.main(ActivityThread.java:4363)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at java.lang.reflect.Method.invokeNative(Native Method)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at java.lang.reflect.Method.invoke(Method.java:521)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
08-27 05:36:56.241: ERROR/AndroidRuntime(333): at dalvik.system.NativeStart.main(Native Method)
감사합니다.
메니페스트에 DbModify.java를 등록 하지 않아서...그런가 했는데...등록해줘도 같은 에러가 발생하네요.ㅠㅠ