diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 0ded7da..22bfcea 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -14,7 +14,11 @@ - + + + + + - diff --git a/code/src/Fitbot/.idea/misc.xml b/code/src/Fitbot/.idea/misc.xml index dd81bb1..f2cd21b 100644 --- a/code/src/Fitbot/.idea/misc.xml +++ b/code/src/Fitbot/.idea/misc.xml @@ -3,12 +3,17 @@ diff --git a/code/src/Fitbot/app/build.gradle b/code/src/Fitbot/app/build.gradle index f20fecb..23c5f19 100644 --- a/code/src/Fitbot/app/build.gradle +++ b/code/src/Fitbot/app/build.gradle @@ -32,6 +32,7 @@ dependencies { implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.android.support.constraint:constraint-layout:2.0.4' + implementation 'com.android.support:cardview-v7:28.0.0' testImplementation 'junit:junit:4.13.2' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' diff --git a/code/src/Fitbot/app/src/main/AndroidManifest.xml b/code/src/Fitbot/app/src/main/AndroidManifest.xml index 69e9077..adeb10a 100644 --- a/code/src/Fitbot/app/src/main/AndroidManifest.xml +++ b/code/src/Fitbot/app/src/main/AndroidManifest.xml @@ -11,6 +11,15 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.Fitbot"> + + + + + + + diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/sports/ESportType.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/sports/ESportType.java new file mode 100644 index 0000000..4ea7606 --- /dev/null +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/sports/ESportType.java @@ -0,0 +1,18 @@ +package com.example.fitbot.sports; + +public enum ESportType { + + FITNESS("Fitness"), + POWER("Krachttrening"); + + private final String name; + + ESportType(String name) { + this.name = name; + } + + public String getName() { + return name; + } + +} diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportItemActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportItemActivity.java new file mode 100644 index 0000000..481605d --- /dev/null +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportItemActivity.java @@ -0,0 +1,21 @@ +package com.example.fitbot.ui; + +import android.os.Bundle; +import android.support.v7.app.AppCompatActivity; + +import com.example.fitbot.R; + +public class SportItemActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_sport_item); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + } + +} diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportMenuActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportMenuActivity.java new file mode 100644 index 0000000..d6d060a --- /dev/null +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportMenuActivity.java @@ -0,0 +1,22 @@ +package com.example.fitbot.ui; + +import android.os.Bundle; +import android.support.v7.app.AppCompatActivity; + +import com.example.fitbot.R; + + +public class SportMenuActivity extends AppCompatActivity { + + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_sport_menu); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + } +} \ No newline at end of file diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportMenuItem.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportMenuItem.java new file mode 100644 index 0000000..1d6f394 --- /dev/null +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/SportMenuItem.java @@ -0,0 +1,45 @@ +package com.example.fitbot.ui; + +import android.content.Context; +import android.content.Intent; +import android.graphics.Bitmap; +import android.graphics.Canvas; +import android.graphics.Paint; +import android.graphics.Rect; +import android.view.View; + +import com.example.fitbot.sports.ESportType; + +public class SportMenuItem extends View { + + private Paint backgroundPaint, textPaint; + private String title, description; + private Bitmap imageResource; + private Rect imageRect, elementRect; + private ESportType type; + + public SportMenuItem(Context context, ESportType type, String title, String description, Bitmap backgroundImage) { + super(context); + this.title = title; + this.description = description; + this.imageResource = backgroundImage; + this.imageRect = new Rect(0, 0, this.imageResource.getWidth(), this.imageResource.getHeight()); + this.elementRect = new Rect(0, 0, this.getWidth(), this.getHeight()); + this.type = type; + this.backgroundPaint = new Paint(); + this.textPaint = new Paint(); + this.textPaint.setTextAlign(Paint.Align.CENTER); + this.backgroundPaint.setColor(0xFFF0F0F0); + this.textPaint.setColor(0xFF000000); + + this.setOnClickListener(v -> context.startActivity(new Intent(context, SportItemActivity.class))); + } + + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + canvas.drawBitmap(this.imageResource, this.imageRect, this.elementRect, null); + canvas.drawRoundRect(0, 0, getWidth(), getHeight(), 10, 10, backgroundPaint); + canvas.drawText(title, getWidth() / 2.0f, this.textPaint.getFontMetrics().top, textPaint); + } +} diff --git a/code/src/Fitbot/app/src/main/res/layout/activity_main.xml b/code/src/Fitbot/app/src/main/res/layout/activity_main.xml index 84f1951..8cebf92 100644 --- a/code/src/Fitbot/app/src/main/res/layout/activity_main.xml +++ b/code/src/Fitbot/app/src/main/res/layout/activity_main.xml @@ -15,4 +15,13 @@ app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> +