public String getPath() { if (!mAcceptFiles) { return mPath.getAbsolutePath(); } else if (mFilePath != null) { return mFilePath.getAbsolutePath(); } else { return null; } }
public void onItemClick(AdapterView<?> parent, View view, int position, long id) { if (mAcceptFiles) { Folder item = (Folder) mAdapter.getItem(position); if (item.isDirectory()) { mPath = item; updateAdapter(); mFilePath = null; } else { mCurrentFolder.setText(item.getAbsolutePath()); mFilePath = item; } } else { mPath = (Folder) mAdapter.getItem(position); updateAdapter(); } }
private void updateAdapter() { mCurrentFolder.setText(mPath.getAbsolutePath()); mAdapter.clear(); if (!mPath.equals(mRootSDCard)) { mAdapter.add(new Folder(mPath, true)); } File[] dirs = mPath.listFiles(mDirFilter); Arrays.sort(dirs); for (int i = 0; i < dirs.length; i++) { mAdapter.add(new Folder(dirs[i])); } if (mAcceptFiles) { File[] files = mPath.listFiles(mFileFilter); Arrays.sort(files); for (int i = 0; i < files.length; i++) { mAdapter.add(new Folder(files[i])); } } mAdapter.notifyDataSetChanged(); mFolders.setSelection(0); mFolders.startLayoutAnimation(); }