Code example for AlertDialog.Builder

Methods: setAdapter, setTitle, show

1
	} 
 
	@Override 
	protected Dialog onCreateDialog(int id) {
		Dialog dialog = null;
		AlertDialog.Builder builder = new Builder(this);
 
		if (fileList == null) { 
			Log.e(TAG, "No files loaded");
			dialog = builder.create();
			return dialog;
		} 
 
		switch (id) {
		case DIALOG_LOAD_FILE: 
			builder.setTitle("Choose your file");
			builder.setAdapter(adapter, new DialogInterface.OnClickListener() {
				@Override 
				public void onClick(DialogInterface dialog, int which) {
					chosenFile = fileList[which].file;
					File sel = new File(path + "/" + chosenFile);
					if (sel.isDirectory()) {
						firstLvl = false; 
 
						// Adds chosen directory to list 
						str.add(chosenFile); 
						fileList = null; 
						path = new File(sel + "");
 
						loadFileList(); 
 
						removeDialog(DIALOG_LOAD_FILE); 
						showDialog(DIALOG_LOAD_FILE); 
						Log.d(TAG, path.getAbsolutePath());
 
					} 
 
					// Checks if 'up' was clicked 
					else if (chosenFile.equalsIgnoreCase("up") && !sel.exists()) {
 
						// present directory removed from list 
						String s = str.remove(str.size() - 1);
 
						// path modified to exclude present directory 
						path = new File(path.toString().substring(0,
								path.toString().lastIndexOf(s)));
						fileList = null; 
 
						// if there are no more directories in the list, then 
						// its the first level 
						if (str.isEmpty()) { 
							firstLvl = true; 
						} 
						loadFileList(); 
 
						removeDialog(DIALOG_LOAD_FILE); 
						showDialog(DIALOG_LOAD_FILE); 
						Log.d(TAG, path.getAbsolutePath());
 
					} 
					// File picked 
					else { 
						// Perform action with file picked 
					} 
 
				} 
			}); 
			break; 
		} 
		dialog = builder.show();
		return dialog;
	} 
 
}