2012-03-03 185 views
14

正在尋找教程來顯示列表視圖中的所有文件和文件夾..但我沒有得到任何東西......任何人都知道我該如何顯示所有該文件夾和Dropbox的文件到我的listview..So,當我在任何file..Then中單擊該文件開始下載..使用Dropbox API列出Dropbox的所有文件夾和文件

嗯,我這裏知道如何下載Dropbox的文件,但是對於我需要以靜態的方式將該文件的名稱放在我的代碼中。

我也打算使用後來的.csv文件過濾器...但我想在一個列表視圖中顯示所有文件。

謝謝..

+0

我太需要同.. – 2012-06-07 09:00:33

回答

20
  String[] fnames = null; 
      Entry dirent = mApi.metadata("/", 1000, null, true, null); 
      ArrayList<Entry> files = new ArrayList<Entry>(); 
      ArrayList<String> dir=new ArrayList<String>(); 
      for (Entry ent: dirent.contents) 
      { 
       files.add(ent);// Add it to the list of thumbs we can choose from      
       //dir = new ArrayList<String>(); 
       dir.add(new String(files.get(i++).path)); 
      } 
      i=0; 
      fnames=dir.toArray(new String[dir.size()]); 

      return fnames; 

這是我使用。 一旦你有stringarray fnames,你可以顯示它在一個列表視圖。

您可以在這樣

final GridView gv=(GridView)temp.findViewById(R.id.gridView1); 
ArrayAdapter<String> ad = new ArrayAdapter<String>(mContext, android.R.layout.simple_list_item_1,fnames); 
gv.setBackgroundColor(Color.BLACK); 
gv.setNumColumns(3); 
gv.setGravity(Gravity.CENTER); 
gv.setAdapter(ad); 
    gv.setBackgroundResource(R.drawable.black_cloud1); 
gv.setOnItemClickListener(new OnItemClickListener() { 
        public void onItemClick(AdapterView<?> arg0, View arg1, 
          int arg2, long arg3) { 
         // TODO Auto-generated method stub 
         Toast.makeText(mContext,gv.getItemAtPosition(arg2).toString(),Toast.LENGTH_SHORT).show(); 

         temp.setData(fnames,gv.getItemAtPosition(arg2).toString()); 

         return; 
        } 

        }); 
+0

mApi在這裏是什麼。可以給我示例演示。 – shailesh 2013-11-25 07:57:11

+0

@AmelJose我在這裏? – NarendraJi 2017-02-20 14:41:39

+0

@shailesh AppKeyPair appKeys = new AppKeyPair(APP_KEY,APP_SECRET); AndroidAuthSession session = new AndroidAuthSession(appKeys); DropboxAPI mApi = new DropboxAPI <>(session); – NarendraJi 2017-02-20 14:43:39

3

試試這個代碼列出文件.....我不知道更多關於Dropbox的,試試吧

Entry contact = mDBApi.metadata("/", 0, null, true, null); 

    List<Entry> CFolder = contact.contents; 
    for (Entry entry : CFolder) { 
    Log.i("DbExampleLog", "Filename: " + entry.fileName());} 
+0

是什麼mDBApi請清除或給出演示項目的任何鏈接 – shailesh 2013-11-25 08:10:30

+0

@shailesh我知道它的後期:DropboxAPI mDBApi – Lunchbox 2014-04-29 14:42:02

-1

GridView中顯示出來,請使用這一個,它是最新的API .....

public void login(String accessToken) { 
     DbxRequestConfig requestConfig = DbxRequestConfig.newBuilder("ManualApp") 
       .withHttpRequestor(OkHttp3Requestor.INSTANCE) 
       .build(); 
     mDbxClient = new DbxClientV2(requestConfig, accessToken); 
    } 

    public List<Metadata> getListFile(String path) { 

     if (mDbxClient == null) { 
      RkLogger.e("get files error", "must login first please"); 
      return null; 
     } 

     try { 
      return mDbxClient.files().listFolder(path).getEntries(); 
     } catch (DbxException e) { 
      RkLogger.e("DbxException ", e.toString()); 
      return null; 
     } 

    } 
相關問題