1

3 つのタブがあり、各タブにはリストビューがあります。これらのリストビューをコンテキスト メニューに登録しました。それぞれのリストビューの項目を格納する 3 つの異なる配列リストがあります。

クリックされたリストビューの項目の位置が欲しいです。

私のコードは:

public boolean onContextItemSelected(MenuItem item) {

     AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();

      switch(item.getItemId()){

   case R.id.mycards_contextmenu_1:

       if(mCurrentTab.equals("Tab 1")){
           try{
           int pos= info.position;
           Toast.makeText(getBaseContext(), pos, Toast.LENGTH_LONG).show();
           }catch(Exception e){
               Toast.makeText(getBaseContext(), e.toString(), Toast.LENGTH_LONG).show();
           }
           }
    break;

  } 

私は得ています

   android.content.res.resources$notfoundexception

どこで間違ったのですか?

編集:

Stack Trace :


 03-14 22:06:12.488: E/AndroidRuntime(3055): FATAL EXCEPTION: main
 03-14 22:06:12.488: E/AndroidRuntime(3055): android.content.res.Resources$NotFoundException: String resource ID #0x0
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.content.res.Resources.getText(Resources.java:229)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.widget.Toast.makeText(Toast.java:265)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at neeraj.cardXchange.myCardsPackage.myCardsActivity.onContextItemSelected(myCardsActivity.java:211)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.app.Activity.onMenuItemSelected(Activity.java:2552)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.policy.impl.PhoneWindow$DialogMenuCallback.onMenuItemSelected(PhoneWindow.java:3601)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:735)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:149)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:874)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.view.menu.MenuDialogHelper.onClick(MenuDialogHelper.java:167)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertController.java:924)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.widget.AdapterView.performItemClick(AdapterView.java:298)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.widget.AbsListView.performItemClick(AbsListView.java:1086)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.widget.AbsListView$PerformClick.run(AbsListView.java:2855)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.widget.AbsListView$1.run(AbsListView.java:3529)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.os.Handler.handleCallback(Handler.java:615)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.os.Handler.dispatchMessage(Handler.java:92)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.os.Looper.loop(Looper.java:137)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at android.app.ActivityThread.main(ActivityThread.java:4745)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at java.lang.reflect.Method.invokeNative(Native Method)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at java.lang.reflect.Method.invoke(Method.java:511)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
 03-14 22:06:12.488: E/AndroidRuntime(3055):    at dalvik.system.NativeStart.main(Native Method)
4

1 に答える 1

2
Toast.makeText(getBaseContext(), pos, Toast.LENGTH_LONG).show();

する必要があります

Toast.makeText(getBaseContext(), String.valueOf(pos), Toast.LENGTH_LONG).show();

ToastまたmakeText()、文字列リソース ID ( int) を受け入れるメソッドがあり、 を渡すposことでそのメソッドを呼び出しますが、その ID を持つ文字列リソースを見つけることができないため、

android.content.res.Resources$NotFoundException
于 2013-03-14T16:40:47.907 に答える