嗨,我是android开发的新手,想将数组动态绑定到android的alertbox,我使用以下代码:

  //Return List of file in current directory from ftp//
  String[] ListFile =  Utility.GetFileFromFtp(Type.Contacts);

  AlertDialog.Builder builder1 = new AlertDialog.Builder(con);
  builder1.setTitle("Select file to Restore");
  builder1.setSingleChoiceItems(ListFile ,-1,new DialogInterface.OnClickListener() {     //@Override
 public void onClick(DialogInterface dialog, int which) {
  // TODO Auto-generated method stub

                   //Error Line//
  Log.d("FileName",String.valueOf(ListFile[which]));
      }
     });

      AlertDialog alert = builder1.create();
      alert.setButton("Ok", OnClickListener);
      alert.show();


此代码成功将列表绑定到警报框。
但是当我尝试获取用户在onclick事件中选择的文件名时,警报框项目

码:

public void onClick(DialogInterface dialog, int which)
{

                   //Error Line//
  Log.d("FileName",String.valueOf(ListFile[which]));
      }
     });


它给出了错误
错误:

Change the ListFile modifier to final


当我将修饰符更改为final时,我无法动态分配列表。
我不知道要解决这个问题,在这方面的任何帮助都将不胜感激。
提前致谢。

最佳答案

将ListFile声明为Public数组,然后进行检查。

我认为它将起作用。

10-08 12:03