Javaの道 Javaに関する
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道 >  掲示板 >  掲示板(onClickの中での変数)
閲覧数:310
掲示板(onClickの中での変数)
名前
匿名
題名 onClickの中での変数
質問内容

質問を評価する
(0ポイント)
1 Log.d("CNTarray",""+CNTarray.size());

 new AlertDialog.Builder(MainActivity.this)
         .setTitle("Save TItle")
         .setView(view)
         .setMessage("保存するタイトルを入力してください")
         .setPositiveButton( "OK", 
          new DialogInterface.OnClickListener() {          
             @Override
             public void onClick(DialogInterface dialog, int which) {
2
            Log.d("CNTarray",""+CNTarray.size());
             }
         })
         .setOnCancelListener(new DialogInterface.OnCancelListener() {
             public void onCancel(DialogInterface dialog) {
                 Toast toast=Toast.makeText(MainActivity.this,"キャンセル",Toast.LENGTH_SHORT);
                 toast.show();
            }  
         })
         .show();

1のlogではちゃんと配列のサイズが出るのですが、2のlogでは0になってしまいます。
なぜこうなってしまうのでしょうか。

2のところで、CNTArrayの配列を扱うにはどうすればよいのでしょうか?

質問日時 2013-11-08 17:08:37
名前
匿名
回答内容

回答を評価する
(0ポイント)
細切れで分からんけど、同名の別の変数なのか、どこかで
クリアしてるか、実行される順番が違うか、だな。
回答日時 2013-11-08 18:07:27
名前
匿名
回答内容

回答を評価する
(0ポイント)
とりあえず、変数をstaticにすれば、
参照できる様になるはず。
使用するときは、もちろん、classname.CNTArrayと指定する。

リスナ(無名クラス)の変数の
スコープについて、調べてみては。
回答日時 2013-11-09 00:01:16
回答内容を入力し、「確認」ボタンをクリックしてください。
ログインしていません。ログインしなくても回答はできますが、ログインすると、質問・回答の管理、更新があった場合のメールでの通知を受けることができます。 ユーザIDをお持ちでない方は「ID登録」からユーザIDの登録を行ってください。
氏名 匿名
回答内容
 



このページのトップへ
 ニュースJava基本Servlet・JSPオープンソースFAQ掲示板
Javaの道_CopyrightJavaの道