diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index ff11e8c..5cd135a 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -4,9 +4,7 @@
diff --git a/app/src/main/java/com/example/alzapp/JumbleActivity.java b/app/src/main/java/com/example/alzapp/JumbleActivity.java
index 43a2236..6f4d861 100644
--- a/app/src/main/java/com/example/alzapp/JumbleActivity.java
+++ b/app/src/main/java/com/example/alzapp/JumbleActivity.java
@@ -1,20 +1,18 @@
package com.example.alzapp;
-import androidx.appcompat.app.AppCompatActivity;
-
import android.content.Intent;
import android.os.Bundle;
-import android.os.Bundle;
-
-import android.os.Handler;
+import android.os.SystemClock;
import android.view.View;
import android.widget.Button;
+import android.widget.Chronometer;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
-import java.util.zip.Inflater;
-import java.util.zip.Inflater.*;
+import java.util.concurrent.TimeUnit;
+
+import androidx.appcompat.app.AppCompatActivity;
/*******
Created on: 21/01/2020
@@ -25,7 +23,7 @@ import java.util.zip.Inflater.*;
********/
-public class JumbleActivity extends AppCompatActivity implements View.OnClickListener{
+public class JumbleActivity extends AppCompatActivity {
private TextView wordTv;
private EditText wordEnteredTv;
@@ -33,6 +31,14 @@ public class JumbleActivity extends AppCompatActivity implements View.OnClickLis
private String wordToFind;
private int score = 0;
private TextView score_dis;
+ private TextView timer;
+ private Chronometer chronometer;
+ private long pauseOffset;
+ private boolean running;
+ private Button pauser;
+ private Button resumer;
+ private long elapsedMillis;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -40,21 +46,22 @@ public class JumbleActivity extends AppCompatActivity implements View.OnClickLis
- score_dis = (TextView) findViewById(R.id.score);
- wordTv = (TextView) findViewById(R.id.wordTv);
- wordEnteredTv = (EditText) findViewById(R.id.wordEnteredTv);
- validate = (Button) findViewById(R.id.validate);
- validate.setOnClickListener(this);
- newGame = (Button) findViewById(R.id.newGame);
+ pauser = findViewById(R.id.pause);
+ resumer = findViewById(R.id.resume);
+ timer = findViewById(R.id.time);
+ score_dis = findViewById(R.id.score);
+ wordTv = findViewById(R.id.wordTv);
+ wordEnteredTv =findViewById(R.id.wordEnteredTv);
+ validate = findViewById(R.id.validate);
+ newGame = findViewById(R.id.newGame);
newGame.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- reset();
- score_dis.setText("Score : " + score);
+ newGame();
}
});
- newGame();
+
Button back = (Button) findViewById(R.id.back);
@@ -65,22 +72,52 @@ public class JumbleActivity extends AppCompatActivity implements View.OnClickLis
}
});
+ validate.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ validate();
+ }
+ });
- }
-
- @Override
- public void onClick(View view) {
- if (view == validate) {
-
- validate();
- } else if (view == newGame) {
- score = 0;
- newGame();
+ chronometer = findViewById(R.id.chronometer);
+ chronometer.setFormat("Time: %s");
+ chronometer.setBase(SystemClock.elapsedRealtime());
+ newGame();
+ chronometer.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() {
+ @Override
+ public void onChronometerTick(Chronometer chronometer) {
+ if (score == 15) {
+ elapsedMillis = SystemClock.elapsedRealtime() - chronometer.getBase();
+ long minutes = TimeUnit.MILLISECONDS.toMinutes(elapsedMillis);
+ long seconds = TimeUnit.MILLISECONDS.toSeconds(elapsedMillis);
+ timer.setText("time : " + minutes + ":" + seconds);
+ Intent intent = new Intent(JumbleActivity.this,QuickPlayMenu.class);
+ startActivity(intent);
+ }
}
+ });
+
+ pauser.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ pauseChronometer();
+ }
+ });
+
+ resumer.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ startChronometer();
+ }
+ });
+
+
}
+
+
private void validate() {
String w = wordEnteredTv.getText().toString();
@@ -102,7 +139,7 @@ public class JumbleActivity extends AppCompatActivity implements View.OnClickLis
String wordShuffled = Jumble.shuffleWord(wordToFind);
wordTv.setText(wordShuffled);
wordEnteredTv.setText("");
-
+ startChronometer();
}
@@ -110,13 +147,39 @@ public class JumbleActivity extends AppCompatActivity implements View.OnClickLis
score = 0;
newGame();
+ resetChronometer();
}
-
-
-
-
+ public void startChronometer() {
+ if (!running) {
+ chronometer.setBase(SystemClock.elapsedRealtime() - pauseOffset);
+ chronometer.start();
+ running = true;
+ }
}
+ public void pauseChronometer() {
+ if (running) {
+ chronometer.stop();
+ pauseOffset = SystemClock.elapsedRealtime() - chronometer.getBase();
+ running = false;
+ }
+ }
+
+ public void resetChronometer() {
+ chronometer.setBase(SystemClock.elapsedRealtime());
+ pauseOffset = 0;
+ }
+
+
+
+
+
+
+
+
+
+}
+
diff --git a/app/src/main/java/com/example/alzapp/QuickPlayMenu.java b/app/src/main/java/com/example/alzapp/QuickPlayMenu.java
index 58c6d9e..190204b 100644
--- a/app/src/main/java/com/example/alzapp/QuickPlayMenu.java
+++ b/app/src/main/java/com/example/alzapp/QuickPlayMenu.java
@@ -1,11 +1,13 @@
package com.example.alzapp;
-import androidx.appcompat.app.AppCompatActivity;
-
import android.content.Intent;
import android.os.Bundle;
+import android.os.SystemClock;
import android.view.View;
import android.widget.Button;
+import android.widget.Chronometer;
+
+import androidx.appcompat.app.AppCompatActivity;
/*******
Created on: 21/01/2020
@@ -21,6 +23,10 @@ public class QuickPlayMenu extends AppCompatActivity {
private Button tilematch;
private Button game3;
private Button game4;
+ private Chronometer chronometer;
+ private long pauseOffset;
+ private boolean running;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -59,5 +65,12 @@ public class QuickPlayMenu extends AppCompatActivity {
+ }
+ public void startChronometer(View v) {
+ if (!running) {
+ chronometer.setBase(SystemClock.elapsedRealtime() - pauseOffset);
+ chronometer.start();
+ running = true;
+ }
}
}
diff --git a/app/src/main/java/com/example/alzapp/registration.java b/app/src/main/java/com/example/alzapp/registration.java
index d87272d..016c4c6 100644
--- a/app/src/main/java/com/example/alzapp/registration.java
+++ b/app/src/main/java/com/example/alzapp/registration.java
@@ -14,14 +14,11 @@ import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;
-
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.toolbox.Volley;
-
import org.json.JSONException;
import org.json.JSONObject;
-
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@@ -131,10 +128,8 @@ public class registration extends AppCompatActivity {
});
- // get selected radio button from radioGroup
- int selectedId = radioSexGroup.getCheckedRadioButtonId();
- //find the radiobutton by returned id
+ int selectedId = radioSexGroup.getCheckedRadioButtonId();
radioSexButton = findViewById(selectedId);
diff --git a/app/src/main/res/drawable/pause_button.png b/app/src/main/res/drawable/pause_button.png
new file mode 100644
index 0000000..0d72f1c
Binary files /dev/null and b/app/src/main/res/drawable/pause_button.png differ
diff --git a/app/src/main/res/layout/activity_jumble.xml b/app/src/main/res/layout/activity_jumble.xml
index d9733ef..70db044 100644
--- a/app/src/main/res/layout/activity_jumble.xml
+++ b/app/src/main/res/layout/activity_jumble.xml
@@ -1,12 +1,15 @@
+ tools:context=".MainActivity"
+
+ >
+
+
-
+ android:text="New Game"
+ />
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_quick_play_menu.xml b/app/src/main/res/layout/activity_quick_play_menu.xml
index 3fd2ced..5480918 100644
--- a/app/src/main/res/layout/activity_quick_play_menu.xml
+++ b/app/src/main/res/layout/activity_quick_play_menu.xml
@@ -67,7 +67,9 @@
android:visibility="visible"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView"
- tools:visibility="visible" />
+ tools:visibility="visible"
+
+ />
-
-
+