Browse Source

fixed crash if checklistdialog returns a arraylist with size 0

Julien Clauter 10 years ago
parent
commit
6bdbf6ad7a

+ 8 - 10
src/de/tudarmstadt/informatik/hostage/ui2/dialog/ChecklistDialog.java

@@ -1,18 +1,20 @@
 package de.tudarmstadt.informatik.hostage.ui2.dialog;
 
-import java.util.ArrayList;
-
 import android.annotation.SuppressLint;
 import android.app.Activity;
 import android.app.AlertDialog;
 import android.app.Dialog;
 import android.app.DialogFragment;
 import android.content.DialogInterface;
-//import android.content.Intent;
 import android.os.Bundle;
+
+import java.util.ArrayList;
+
 import de.tudarmstadt.informatik.hostage.R;
 import de.tudarmstadt.informatik.hostage.ui2.activity.MainActivity;
 
+//import android.content.Intent;
+
 @SuppressLint("ValidFragment")
 public class ChecklistDialog extends DialogFragment {
 	
@@ -24,13 +26,6 @@ public class ChecklistDialog extends DialogFragment {
     private boolean isMultipleChoice;
     
     public String title;
-
-//	static public final String DIALOG_TITLE_KEY = "DIALOG_TITLE_KEY";
-//	static public final String DIALOG_IS_MULTIPLECHOICE_KEY = "DIALOG_IS_MULTIPLECHOICE_KEY";
-//	static public final String DIALOG_SELECTED_INDEX_KEY = "DIALOG_SELECTED_INDEX_KEY";
-//
-//	static public final String DIALOG_TITLE_ARRAY_KEY = "DIALOG_TITLE_ARRAY_KEY";
-//	static public final String DIALOG_MULTIPLECHOICE_SELECTED_KEY = "DIALOG_MULTIPLECHOICE_SELECTED_KEY";
 	
 	
     @SuppressLint("ValidFragment")
@@ -94,6 +89,9 @@ public class ChecklistDialog extends DialogFragment {
     
     public ArrayList<String> getSelectedItemTitles(){
     	ArrayList<String> list = new ArrayList<String>();
+        if (this.mSelectedItems == null){
+            return  list;
+        }
     	for(Integer i : this.mSelectedItems){
     		list.add(this.itemTitles.get(i.intValue()));
     	}

+ 4 - 2
src/de/tudarmstadt/informatik/hostage/ui2/fragment/RecordOverviewFragment.java

@@ -1,7 +1,5 @@
 package de.tudarmstadt.informatik.hostage.ui2.fragment;
 
-import com.google.android.gms.maps.model.LatLng;
-
 import android.annotation.SuppressLint;
 import android.app.Fragment;
 import android.content.Context;
@@ -23,6 +21,8 @@ import android.widget.PopupMenu;
 import android.widget.PopupMenu.OnMenuItemClickListener;
 import android.widget.Toast;
 
+import com.google.android.gms.maps.model.LatLng;
+
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
@@ -579,12 +579,14 @@ public class RecordOverviewFragment extends Fragment implements ChecklistDialog.
 		}
 		if(title.equals(FILTER_MENU_TITLE_SORTING)){
 			ArrayList<String> titles = dialog.getSelectedItemTitles();
+            if (titles.size() == 0) return;
 			String t = titles.get(0);
 			int sortType = this.sortTypeTtiles().indexOf(t);
 			this.filter.setSorttype(SortType.values()[sortType]);
 		}
         if (title.equals(FILTER_MENU_TITLE_GROUP)){
             ArrayList<String> titles = dialog.getSelectedItemTitles();
+            if (titles.size() == 0) return;
             this.groupingKey =  titles.get(0);
         }
 		this.populateListViewFromDB(this.expListView);