Skip to content

Commit

Permalink
Updated Health UI and added a dedicated class for water intake stats
Browse files Browse the repository at this point in the history
  • Loading branch information
gabrielconstantin02 committed Aug 18, 2019
1 parent 0733dbd commit de4ebe2
Show file tree
Hide file tree
Showing 5 changed files with 239 additions and 136 deletions.
1 change: 1 addition & 0 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
<activity android:name=".Settings" />
<activity android:name=".Share" />
<activity android:name=".Stats" />
<activity android:name=".Health_water" />
</application>

</manifest>
78 changes: 6 additions & 72 deletions app/src/main/java/com/example/workouttracker/Health.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,85 +16,19 @@
import java.util.Date;

public class Health extends AppCompatActivity {
SharedPreferences preferences ; //Save key-value data
SharedPreferences.Editor editor; //Edit key-value data
int day=1;
float total_quantity=0;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.health);
preferences = getSharedPreferences("my_pref", MODE_PRIVATE);
editor = preferences.edit();
total_quantity=preferences.getFloat("water per day",0);
TextView mqt=(TextView) findViewById(R.id.water_month);
float water_month=preferences.getFloat("water month",0);
mqt.setText("water consumed this month:"+water_month);
TextView pqt = (TextView) findViewById(R.id.water_today);
float water_today=preferences.getFloat("water today",0);
pqt.setText("Water consumed today:"+water_today);
TextView tqt=(TextView) findViewById(R.id.water_per_day);
tqt.setText("Water consumed/day:"+total_quantity/day);
}
public void onBackPressed(View view) {
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}
public void onDone(View view) {
Date c = Calendar.getInstance().getTime();
System.out.println("Current time => " + c);

SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String formattedDate = df.format(c);
String myDate = null;
Log.d("CurrentDate",formattedDate);
try {
myDate = preferences.getString("myDate", "16-Aug-2019");
Log.d("SavedDate",myDate);
} catch (Exception ex) {
ex.printStackTrace();
}
EditText qt = (EditText) findViewById(R.id.input_water);
try {
Float quantity = Float.valueOf(qt.getText().toString());
total_quantity+=quantity;
Log.d("water",String.valueOf(quantity));
TextView pqt = (TextView) findViewById(R.id.water_today);
float water_today=preferences.getFloat("water today",0);
//pqt.setText(String.valueOf(water));
if (formattedDate.equals(myDate)||myDate.equals("16-Aug-2019")) {
//Float water_today=Float.valueOf(pqt.getText().toString());
Log.d("water",String.valueOf(water_today));
water_today=quantity+water_today;
editor.putFloat("water today",water_today);
pqt.setText("Water consumed today:"+String.valueOf(water_today));
//increment water intake per day and active time
} else {
if (Calendar.getInstance().get(Calendar.DAY_OF_MONTH) == 1) {
editor.putFloat("water month", quantity);
editor.commit();
}
editor.putString("myDate", formattedDate);
editor.commit();
pqt.setText("Water consumed today:"+String.valueOf(quantity));
editor.putFloat("water today",quantity);
editor.commit();
day++;
//save this values to another category like weekly water intake
}
TextView mqt=(TextView) findViewById(R.id.water_month);
float water_month=preferences.getFloat("water month",0);
Log.d("month",String.valueOf(water_month));
Float total=water_month+quantity;
mqt.setText("Water consumed this month:"+String.valueOf(total));
editor.putFloat("water month",total);
editor.commit();
TextView tqt=(TextView) findViewById(R.id.water_per_day);
editor.putFloat("water per day",total_quantity);
tqt.setText("Water consumed/day:"+String.valueOf(total_quantity/day));
qt.setText(null);
}catch (Exception ex){
}
}
}
public void onWater(View view){
Intent intent = new Intent(this, Health_water.class);
startActivity(intent);
finish();
}
}
100 changes: 100 additions & 0 deletions app/src/main/java/com/example/workouttracker/Health_water.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
package com.example.workouttracker;

import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class Health_water extends AppCompatActivity {
SharedPreferences preferences ; //Save key-value data
SharedPreferences.Editor editor; //Edit key-value data
int day=1;
float total_quantity=0;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.health_water);
preferences = getSharedPreferences("my_pref", MODE_PRIVATE);
editor = preferences.edit();
total_quantity=preferences.getFloat("water per day",0);
TextView mqt=(TextView) findViewById(R.id.water_month);
float water_month=preferences.getFloat("water month",0);
mqt.setText("water consumed this month:"+water_month);
TextView pqt = (TextView) findViewById(R.id.water_today);
float water_today=preferences.getFloat("water today",0);
pqt.setText("Water consumed today:"+water_today);
TextView tqt=(TextView) findViewById(R.id.water_per_day);
tqt.setText("Water consumed/day:"+total_quantity/day);
}
public void onBackPressed(View view) {
Intent intent = new Intent(this, Health.class);
startActivity(intent);
finish();
}
public void onDone(View view) {
Date c = Calendar.getInstance().getTime();
System.out.println("Current time => " + c);

SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String formattedDate = df.format(c);
String myDate = null;
Log.d("CurrentDate",formattedDate);
try {
myDate = preferences.getString("myDate", "16-Aug-2019");
Log.d("SavedDate",myDate);
} catch (Exception ex) {
ex.printStackTrace();
}
EditText qt = (EditText) findViewById(R.id.input_water);
try {
Float quantity = Float.valueOf(qt.getText().toString());
total_quantity+=quantity;
Log.d("water",String.valueOf(quantity));
TextView pqt = (TextView) findViewById(R.id.water_today);
float water_today=preferences.getFloat("water today",0);
//pqt.setText(String.valueOf(water));
if (formattedDate.equals(myDate)||myDate.equals("16-Aug-2019")) {
//Float water_today=Float.valueOf(pqt.getText().toString());
Log.d("water",String.valueOf(water_today));
water_today=quantity+water_today;
editor.putFloat("water today",water_today);
pqt.setText("Water consumed today:"+String.valueOf(water_today));
//increment water intake per day and active time
} else {
if (Calendar.getInstance().get(Calendar.DAY_OF_MONTH) == 1) {
editor.putFloat("water month", quantity);
editor.commit();
}
editor.putString("myDate", formattedDate);
editor.commit();
pqt.setText("Water consumed today:"+String.valueOf(quantity));
editor.putFloat("water today",quantity);
editor.commit();
day++;
//save this values to another category like weekly water intake
}
TextView mqt=(TextView) findViewById(R.id.water_month);
float water_month=preferences.getFloat("water month",0);
Log.d("month",String.valueOf(water_month));
Float total=water_month+quantity;
mqt.setText("Water consumed this month:"+String.valueOf(total));
editor.putFloat("water month",total);
editor.commit();
TextView tqt=(TextView) findViewById(R.id.water_per_day);
editor.putFloat("water per day",total_quantity);
tqt.setText("Water consumed/day:"+String.valueOf(total_quantity/day));
qt.setText(null);
}catch (Exception ex){
}
}
}
101 changes: 37 additions & 64 deletions app/src/main/res/layout/health.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,6 @@
tools:context=".Health"
android:background="@drawable/mainbackground">

<TextView
android:id="@+id/water_month"
android:layout_width="190dp"
android:layout_height="58dp"
android:layout_marginStart="28dp"
android:layout_marginLeft="28dp"
android:layout_marginTop="28dp"
android:text="Water consumed this month:"
android:textSize="18sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/water_per_day" />

<android.support.design.widget.FloatingActionButton
android:id="@+id/floatingActionButton13"
android:layout_width="58dp"
Expand All @@ -31,65 +19,50 @@
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@android:drawable/ic_menu_revert" />

<EditText
android:id="@+id/input_water"
android:layout_width="280dp"
android:layout_height="45dp"
android:layout_marginStart="16dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="16dp"
android:ems="10"
android:hint="Input consumed water(L)"
android:inputType="numberDecimal"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/water_today" />

<TextView
android:id="@+id/water_today"
android:layout_width="285dp"
android:layout_height="57dp"
android:layout_marginStart="16dp"
android:layout_marginLeft="16dp"
android:layout_marginTop="72dp"
android:text="Water consumed today:"
android:textSize="18sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

<TextView
android:id="@+id/water_per_day"
android:layout_width="187dp"
android:layout_height="71dp"
android:layout_marginStart="28dp"
android:layout_marginLeft="28dp"
<Button
android:id="@+id/active_time"
android:layout_width="180dp"
android:layout_height="54dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="24dp"
android:text="Water consumed/day:"
android:textSize="18sp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:text="Active Time"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView2" />
app:layout_constraintTop_toBottomOf="@+id/water" />

<Button
android:id="@+id/button"
android:layout_width="119dp"
android:layout_height="55dp"
android:layout_marginEnd="28dp"
android:layout_marginRight="28dp"
android:layout_marginBottom="60dp"
android:onClick="onDone"
android:text="Save"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" />

<TextView
android:id="@+id/textView2"
android:layout_width="253dp"
android:layout_height="44dp"
android:id="@+id/sleep"
android:layout_width="180dp"
android:layout_height="54dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="28dp"
android:text="Stats:"
android:textSize="26sp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:text="Sleep"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/input_water" />
app:layout_constraintTop_toBottomOf="@+id/active_time" />

<Button
android:id="@+id/water"
android:layout_width="180dp"
android:layout_height="54dp"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginTop="104dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:text="Water"
android:onClick="onWater"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />

</android.support.constraint.ConstraintLayout>
Loading

0 comments on commit de4ebe2

Please sign in to comment.