From 9cbaf5148e7dde6af1ebacfddeeee0d9c984753d Mon Sep 17 00:00:00 2001 From: Priyatham Date: Sat, 21 Mar 2020 23:10:33 +0530 Subject: [PATCH] time calculation in jumble --- .idea/gradle.xml | 5 +- .../com/example/alzapp/JumbleActivity.java | 127 +++++++++++++----- .../com/example/alzapp/QuickPlayMenu.java | 17 ++- .../java/com/example/alzapp/registration.java | 7 +- app/src/main/res/drawable/pause_button.png | Bin 0 -> 12897 bytes app/src/main/res/layout/activity_jumble.xml | 49 ++++++- .../res/layout/activity_quick_play_menu.xml | 4 +- .../res/layout/activity_tile_matching.xml | 4 +- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 4 +- 10 files changed, 164 insertions(+), 55 deletions(-) create mode 100644 app/src/main/res/drawable/pause_button.png 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 0000000000000000000000000000000000000000..0d72f1c569f2e43272950efa5529430c984596b4 GIT binary patch literal 12897 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 + tools:context=".MainActivity" + + > + + - + android:text="New Game" + /> + + + + +