mirror of
				https://github.com/SimpleMobileTools/Simple-File-Manager.git
				synced 2025-06-05 22:09:15 +02:00 
			
		
		
		
	get a sorted list of directories
This commit is contained in:
		| @@ -8,7 +8,7 @@ | ||||
|         android:label="@string/app_name" | ||||
|         android:supportsRtl="true" | ||||
|         android:theme="@style/AppTheme"> | ||||
|         <activity android:name=".MainActivity"> | ||||
|         <activity android:name=".activities.MainActivity"> | ||||
|             <intent-filter> | ||||
|                 <action android:name="android.intent.action.MAIN"/> | ||||
|  | ||||
| @@ -16,5 +16,4 @@ | ||||
|             </intent-filter> | ||||
|         </activity> | ||||
|     </application> | ||||
|  | ||||
| </manifest> | ||||
| </manifest> | ||||
|   | ||||
| @@ -1,13 +0,0 @@ | ||||
| package com.simplemobiletools.filemanager; | ||||
|  | ||||
| import android.support.v7.app.AppCompatActivity; | ||||
| import android.os.Bundle; | ||||
|  | ||||
| public class MainActivity extends AppCompatActivity { | ||||
|  | ||||
|     @Override | ||||
|     protected void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
|         setContentView(R.layout.activity_main); | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,7 @@ | ||||
| package com.simplemobiletools.filemanager; | ||||
|  | ||||
| public class Utils { | ||||
|     public static String getFilename(final String path) { | ||||
|         return path.substring(path.lastIndexOf("/") + 1); | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,40 @@ | ||||
| package com.simplemobiletools.filemanager.activities; | ||||
|  | ||||
| import android.os.Bundle; | ||||
| import android.os.Environment; | ||||
| import android.support.v7.app.AppCompatActivity; | ||||
|  | ||||
| import com.simplemobiletools.filemanager.R; | ||||
| import com.simplemobiletools.filemanager.Utils; | ||||
| import com.simplemobiletools.filemanager.models.Directory; | ||||
|  | ||||
| import java.io.File; | ||||
| import java.util.ArrayList; | ||||
| import java.util.Collections; | ||||
| import java.util.List; | ||||
|  | ||||
| public class MainActivity extends AppCompatActivity { | ||||
|  | ||||
|     @Override | ||||
|     protected void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
|         setContentView(R.layout.activity_main); | ||||
|         List<Directory> dirs = getDirectories(); | ||||
|         Collections.sort(dirs); | ||||
|     } | ||||
|  | ||||
|     private List<Directory> getDirectories() { | ||||
|         final List<Directory> dirs = new ArrayList<>(); | ||||
|         final String path = Environment.getExternalStorageDirectory().toString(); | ||||
|         final File root = new File(path); | ||||
|         File[] files = root.listFiles(); | ||||
|         for (File file : files) { | ||||
|             if (file.isDirectory()) { | ||||
|                 final String dirPath = file.getAbsolutePath(); | ||||
|                 final String dirName = Utils.getFilename(dirPath); | ||||
|                 dirs.add(new Directory(dirPath, dirName)); | ||||
|             } | ||||
|         } | ||||
|         return dirs; | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,32 @@ | ||||
| package com.simplemobiletools.filemanager.models; | ||||
|  | ||||
| public class Directory implements Comparable { | ||||
|     private final String path; | ||||
|     private final String name; | ||||
|  | ||||
|     public Directory(String path, String name) { | ||||
|         this.path = path; | ||||
|         this.name = name; | ||||
|     } | ||||
|  | ||||
|     public String getPath() { | ||||
|         return path; | ||||
|     } | ||||
|  | ||||
|     public String getName() { | ||||
|         return name; | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public int compareTo(Object object) { | ||||
|         final Directory directory = (Directory) object; | ||||
|         return this.name.compareToIgnoreCase(directory.getName()); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public String toString() { | ||||
|         return "Directory {" + | ||||
|                 "name=" + getName() + | ||||
|                 ", path=" + getPath() + "}"; | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user