소스 검색

Fixed error-prone behavior and desmelled

Zachary Hatton 9 년 전
부모
커밋
310b1432a8

+ 49 - 44
app/src/main/java/com/example/yiupang/freefoodfinder/CreateEventScreen.java

@@ -6,6 +6,9 @@ import android.view.View;
 import android.widget.Button;
 import android.widget.EditText;
 
+import java.util.ArrayList;
+import java.util.List;
+
 public class CreateEventScreen extends AppCompatActivity {
 
     @Override
@@ -16,18 +19,25 @@ public class CreateEventScreen extends AppCompatActivity {
         final Event newEvent = new Event();
 
         Button button = (Button) findViewById(R.id.button_create);
-        final EditText titleEdit = (EditText) findViewById(R.id.titletext);
+
+        final List<EditText> edits = new ArrayList<>();
+        final EditText titleEdit = (EditText) findViewById(R.id.creatortext);
         final EditText dateEdit = (EditText) findViewById(R.id.datetext);
         final EditText timeEdit = (EditText) findViewById(R.id.timetext);
         final EditText placeEdit = (EditText) findViewById(R.id.placetext);
         final EditText foodEdit = (EditText) findViewById(R.id.foodtext);
         final EditText descEdit = (EditText) findViewById(R.id.descriptiontext);
+        edits.add(titleEdit);
+        edits.add(dateEdit);
+        edits.add(timeEdit);
+        edits.add(placeEdit);
+        edits.add(foodEdit);
+        edits.add(descEdit);
 
         button.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v){
-
-                makeEvent();
+                makeEdits(newEvent,edits);
 
                 HttpCall httpr = new HttpCall();
                 httpr.setMethodType(HttpCall.PUT);
@@ -43,53 +53,48 @@ public class CreateEventScreen extends AppCompatActivity {
 
             }
 
-            private void makeEvent(){
-                String title = titleEdit.getText().toString();
-                String date = dateEdit.getText().toString();
-                String time = timeEdit.getText().toString();
-                String place = placeEdit.getText().toString();
-                String food = foodEdit.getText().toString();
-                String desc = descEdit.getText().toString();
 
-                newEvent.setName(title);
-                newEvent.setPlace(place);
-                float[] coordinates = place2Coordinates(place);
-                newEvent.setLat(coordinates[0]);
-                newEvent.setLng(coordinates[1]);
-                newEvent.setDate(date);
-                newEvent.setTime(time);
-                newEvent.setFoodType(food);
-                newEvent.setDescription(desc);
-            }
         });
     }
 
+    public void makeEdits(Event e,List<EditText> edits){
+        String title = edits.get(0).getText().toString();
+        String date = edits.get(1).getText().toString();
+        String time = edits.get(2).getText().toString();
+        String place = edits.get(3).getText().toString();
+        String food = edits.get(4).getText().toString();
+        String desc = edits.get(5).getText().toString();
+
+        e.setName(title);
+        e.setPlace(place);
+        float[] coordinates = place2Coordinates(place);
+        e.setLat(coordinates[0]);
+        e.setLng(coordinates[1]);
+        e.setDate(date);
+        e.setTime(time);
+        e.setFoodType(food);
+        e.setDescription(desc);
+    }
     public float[] place2Coordinates(String place){
-        float[] coords = new float[2];
+        float[] coords;
 
-        if("KennedyLibrary".equals(place) || "35".equals(place)){
-            coords[0] = 35.30187f;
-            coords[1] = -120.663861f;
-        }
-        else if("Computer Science Building".equals(place) || "14".equals(place)){
-            coords[0] = 35.299895f;
-            coords[1] = -120.662144f;
-        }
-        else if("Engineering East".equals(place) || "20".equals(place)){
-            coords[0] = 35.300576f;
-            coords[1] = -120.661726f;
-        }
-        else if("Science".equals(place) || "52".equals(place)){
-            coords[0] = 35.300571f;
-            coords[1] = -120.660192f;
-        }
-        else if("Engineering West".equals(place) || "21".equals(place)){
-            coords[0] = 35.300066f;
-            coords[1] = -120.663209f;
-        }
-        else{
-            coords[0] = 35.305005f;
-            coords[1] = -120.662494f;
+        switch(place){
+            case "KennedyLibrary":
+            case "35": coords = new float[]{35.30187f, -120.663861f};
+                break;
+            case "Computer Science Building":
+            case "14": coords = new float[]{35.299895f,-120.662144f};
+                break;
+            case "Engineering East":
+            case "20": coords = new float[]{35.300576f, -120.661726f};
+                break;
+            case "Science":
+            case "52": coords = new float[]{35.300571f, -120.660192f};
+                break;
+            case "Engineering West":
+            case "21": coords = new float[]{35.300066f, -120.663209f};
+                break;
+            default: coords = new float[]{35.305005f,-120.662494f};
         }
         return coords;
     }

+ 4 - 13
app/src/main/java/com/example/yiupang/freefoodfinder/Event.java

@@ -40,12 +40,8 @@ class Event
     public void setDateTime(Date d){ dateTime = d; }
 
     public boolean setName(String name) {
-        if (name.length() > 3 && name.length() < 31) {
-            this.name = name;
-            return true;
-        } else {
-            return false;
-        }
+        this.name = name;
+        return name.length() > 3 && name.length() < 31;
     }
 
     public String getFoodType() {
@@ -53,13 +49,8 @@ class Event
     }
 
     public boolean setFoodType(String foodType){
-        if(foodType.length() > 3 && foodType.length() <31) {
-            this.foodType = foodType;
-            return true;
-        }
-        else{
-            return false;
-        }
+        this.foodType = foodType;
+        return foodType.length() > 3 && foodType.length() <31;
     }
 
     public double getLat(){