如何将特定文件夹中的所有文件名添加到列表中?

时间:2016-09-24 16:42:56

标签: android listview

所以基本上我有一个名为" saved_images"的文件夹,其中我有一堆图像。我希望能够从该文件夹中获取所有文件名并将其添加到我拥有的列表中。例如,如果我有" picture1.jpg"和" picture2.jpg"在这个文件夹中,我希望我的列表显示为" picture1"," picture2"。我怎么能做到这一点?以下是我对Listview的代码,非常感谢任何帮助。

 public class List extends MainActivity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.list);

    String[] foods = {stringLabel};
    ListAdapter buckysAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, foods);
    ListView buckysListView = (ListView) findViewById(R.id.ListView);
    buckysListView.setAdapter(buckysAdapter);

    buckysListView.setOnItemClickListener(
            new AdapterView.OnItemClickListener(){
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    String food = String.valueOf(parent.getItemAtPosition(position));
                    Toast.makeText(List.this, food, Toast.LENGTH_LONG).show();
                }
            }
    );
}
}

1 个答案:

答案 0 :(得分:0)

首先使用 getFilesName() 获取文件夹内的所有文件 将文件夹路径作为参数传递给它。并将字符串[]设置为ListAdapter

String[] fileNames = getFilesName(*FolderPath*);
if(fileNames!=null)
ListAdapter buckysAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,fileNames);

使用此功能获取所有文件列表

   private String[] getFilesName(String path){
    File file = new File(path);
    if(!file.exists()||!file.isDirectory())return null;
    return file.list();
   }

注意:未经测试