diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 95aa5f7..e1d6f7b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -15,10 +15,12 @@
200){
- Toast.makeText(getApplicationContext(), "Number must be between 5 and 200 inclusive", Toast.LENGTH_SHORT).show();
- return false;
- }
- } catch (NumberFormatException e){
+ if (countInput < 5 || countInput > 200) {
+ Toast.makeText(getApplicationContext(), "Number must be between 5 and 200 inclusive", Toast.LENGTH_SHORT).show();
+ return false;
+ }
+ } catch (NumberFormatException e) {
Toast.makeText(getApplicationContext(), "Number must be between 5 and 200 inclusive", Toast.LENGTH_SHORT).show();
return false;
}
diff --git a/app/src/main/java/com/example/assignment1/dataActivity.java b/app/src/main/java/com/example/assignment1/dataActivity.java
index 5af9ef0..1a3452e 100644
--- a/app/src/main/java/com/example/assignment1/dataActivity.java
+++ b/app/src/main/java/com/example/assignment1/dataActivity.java
@@ -1,16 +1,28 @@
package com.example.assignment1;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.widget.ArrayAdapter;
+import android.widget.ListView;
+import android.widget.TextView;
+
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
-import android.os.Bundle;
-import android.view.Menu;
-import android.widget.TextView;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
public class dataActivity extends AppCompatActivity {
protected Toolbar myToolbar;
+ protected TextView firstCounterButtonName;
+ protected TextView secondCounterButtonName;
+ protected TextView thirdCounterButtonName;
+
protected TextView firstCounter;
protected TextView secondCounter;
protected TextView thirdCounter;
@@ -20,17 +32,23 @@ public class dataActivity extends AppCompatActivity {
protected CountSharedPreferenceHelper countSharedPrefHelper;
+ protected boolean showingNames;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_data);
myToolbar = (Toolbar) findViewById(R.id.data_toolbar);
- firstCounter = findViewById(R.id.counter_1_data_name);
- secondCounter = findViewById(R.id.counter_2_data_name);
- thirdCounter = findViewById(R.id.counter_3_data_name);
+ firstCounterButtonName = findViewById(R.id.counter_1_data_name);
+ secondCounterButtonName = findViewById(R.id.counter_2_data_name);
+ thirdCounterButtonName = findViewById(R.id.counter_3_data_name);
currentCounter = findViewById(R.id.allCounter);
+ firstCounter = findViewById(R.id.firstEventCounter);
+ secondCounter = findViewById(R.id.secondEventCounter);
+ thirdCounter = findViewById(R.id.thirdEventCounter);
+
counterButtonSharedPrefHelper = new CounterButtonSharedPreferenceHelper(dataActivity.this);
countSharedPrefHelper = new CountSharedPreferenceHelper(dataActivity.this);
@@ -41,17 +59,76 @@ public class dataActivity extends AppCompatActivity {
}
@Override
- protected void onStart(){
+ protected void onStart() {
super.onStart();
- firstCounter.setText(counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.FIRST));
- secondCounter.setText(counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.SECOND));
- thirdCounter.setText(counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.THIRD));
+ firstCounterButtonName.setText(counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.FIRST));
+ secondCounterButtonName.setText(counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.SECOND));
+ thirdCounterButtonName.setText(counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.THIRD));
currentCounter.setText(String.format(Integer.toString(countSharedPrefHelper.getCurrentCount())));
+
+ firstCounter.setText(countSharedPrefHelper.getNumberOfEventInEventsList('1'));
+ secondCounter.setText(countSharedPrefHelper.getNumberOfEventInEventsList('2'));
+ thirdCounter.setText(countSharedPrefHelper.getNumberOfEventInEventsList('3'));
+
+ ArrayAdapter adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, constructListViewWithNames());
+
+ ListView listView = findViewById(R.id.eventsListView);
+ listView.setAdapter(adapter);
+
+ // to toggle the events name
+ showingNames = false;
}
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.data_activity_menu, menu);
return true;
}
+
+
+ // handles when no event names are toggled
+ public boolean onOptionsItemSelected(MenuItem item) {
+ Log.d("DATA_ACTIVITY", "CLICKED THE TOGGLE");
+ int id = item.getItemId();
+
+ if (id == R.id.toggle_event_names) {
+
+ ArrayAdapter adapter;
+ ListView listView;
+
+ if (showingNames) {
+ adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, constructListViewWithNames());
+
+ listView = findViewById(R.id.eventsListView);
+
+ } else {
+ adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, constructListViewWithoutNames());
+
+ listView = findViewById(R.id.eventsListView);
+ }
+
+ listView.setAdapter(adapter);
+
+ showingNames = !showingNames;
+
+ return true;
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+
+ private String[] constructListViewWithNames() {
+
+ Map replacements = new HashMap<>();
+ replacements.put("1", counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.FIRST));
+ replacements.put("2", counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.SECOND));
+ replacements.put("3", counterButtonSharedPrefHelper.getCounterButtonName(CounterButton.THIRD));
+
+
+ return Arrays.stream(constructListViewWithoutNames()).map(value -> replacements.getOrDefault(value, value)).toArray(String[]::new);
+ }
+
+ private String[] constructListViewWithoutNames() {
+ return countSharedPrefHelper.getEventsList().chars().mapToObj(c -> String.valueOf((char) c)).toArray(String[]::new);
+ }
}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_data.xml b/app/src/main/res/layout/activity_data.xml
index c6764c7..a3e0c8a 100644
--- a/app/src/main/res/layout/activity_data.xml
+++ b/app/src/main/res/layout/activity_data.xml
@@ -34,21 +34,25 @@ tools:context=".SettingsActivity">
android:id="@+id/counter_1_data_name"
android:layout_width="wrap_content"
android:layout_height="match_parent"
+ android:textSize="24sp"
/>
@@ -62,22 +66,26 @@ tools:context=".SettingsActivity">
@@ -92,21 +100,25 @@ tools:context=".SettingsActivity">
android:id="@+id/counter_3_data_name"
android:layout_width="wrap_content"
android:layout_height="match_parent"
+ android:textSize="24sp"
/>
@@ -121,21 +133,24 @@ tools:context=".SettingsActivity">
-
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 4ebdc32..d72c490 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -15,7 +15,7 @@
Maximum Counts
Toggle Event Names
- :
+ ": "
" events"
"Total events: "
\ No newline at end of file