diff --git a/app/build.gradle b/app/build.gradle
index c3e5e23..34ae911 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,11 +1,11 @@
apply plugin: 'com.android.application'
android {
- compileSdkVersion 30
+ compileSdkVersion 34
defaultConfig {
applicationId "com.rhinemann.project"
- minSdkVersion 19
+ minSdkVersion 28
targetSdkVersion 30
versionCode 1
versionName "1.0"
@@ -29,13 +29,13 @@ android {
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
- implementation 'androidx.appcompat:appcompat:1.2.0'
- implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
- implementation 'com.jjoe64:graphview:4.2.2'
- implementation 'com.google.android.material:material:1.2.1'
- testImplementation 'junit:junit:4.12'
- androidTestImplementation 'androidx.test.ext:junit:1.1.1'
- androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
+ implementation 'androidx.appcompat:appcompat:1.6.1'
+ implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
+// implementation 'com.jjoe64:graphview:4.2.2'
+ implementation 'com.google.android.material:material:1.11.0'
+ testImplementation 'junit:junit:4.13.2'
+ androidTestImplementation 'androidx.test.ext:junit:1.1.5'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
def multidex_version = "2.0.1"
implementation "androidx.multidex:multidex:$multidex_version"
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index a4fa439..12be92e 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -7,37 +7,47 @@
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
- android:theme="@style/AppTheme">
+ android:theme="@style/AppTheme"
+ >
+
+ android:exported="false"
+ android:screenOrientation="portrait" />
+ android:exported="false"
+ android:screenOrientation="portrait" />
+ android:exported="false"
+ android:screenOrientation="portrait" />
+ android:exported="false"
+ android:screenOrientation="portrait" />
+ android:exported="false"
+ android:screenOrientation="portrait" />
+ android:exported="true"
+ android:screenOrientation="portrait" />
+ android:exported="false"
+ android:screenOrientation="portrait" />
+ android:exported="true"
+ android:screenOrientation="portrait" >
diff --git a/app/src/main/java/com/rhinemann/project/Calculator.java b/app/src/main/java/com/rhinemann/project/Calculator.java
index 3ae40cf..f0f3755 100644
--- a/app/src/main/java/com/rhinemann/project/Calculator.java
+++ b/app/src/main/java/com/rhinemann/project/Calculator.java
@@ -109,9 +109,17 @@ public class Calculator extends AppCompatActivity {
checkBox_Tech = findViewById(R.id.checkBox_Tech);
checkBox_Art = findViewById(R.id.checkBox_Art);
- IT.clearCheck();
- Tech.clearCheck();
- Art.clearCheck();
+ for (int i = 0; i < IT.getChildCount(); i++) {
+ IT.getChildAt(i).setEnabled(false);
+ }
+
+ for (int i = 0; i < IT.getChildCount(); i++) {
+ Tech.getChildAt(i).setEnabled(false);
+ }
+
+ for (int i = 0; i < IT.getChildCount(); i++) {
+ Art.getChildAt(i).setEnabled(false);
+ }
UALan.setOnCheckedChangeListener((radioGroup, checkedId) -> {
if (checkedId == R.id.UALanSt) UALan_Hours = 2f;
@@ -250,8 +258,13 @@ public class Calculator extends AppCompatActivity {
});
checkBox_IT.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ for (int i = 0; i < IT.getChildCount(); i++) {
+ IT.getChildAt(i).setEnabled(isChecked);
+ }
+
if (checkBox_IT.isChecked()) {
IT_Hours = 3f;
+ IT.check(R.id.ITSt);
IT.setOnCheckedChangeListener((radioGroup, checkedId) -> {
if (checkBox_IT.isChecked()) {
@@ -268,8 +281,13 @@ public class Calculator extends AppCompatActivity {
});
checkBox_Tech.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ for (int i = 0; i < Tech.getChildCount(); i++) {
+ Tech.getChildAt(i).setEnabled(isChecked);
+ }
+
if (checkBox_Tech.isChecked()) {
Tech_Hours = 3f;
+ Tech.check(R.id.TechSt);
Tech.setOnCheckedChangeListener((radioGroup, checkedId) -> {
if (checkBox_Tech.isChecked()) {
@@ -286,13 +304,19 @@ public class Calculator extends AppCompatActivity {
});
checkBox_Art.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ for (int i = 0; i < Art.getChildCount(); i++) {
+ Art.getChildAt(i).setEnabled(isChecked);
+ }
+
if (checkBox_Art.isChecked()) {
Art_Hours = 3f;
+ Art.check(R.id.ArtSt);
Art.setOnCheckedChangeListener((radioGroup, checkedId) -> {
if (checkBox_Art.isChecked()) {
if (checkedId == R.id.ArtSt) Art_Hours = 3f;
else if (checkedId == R.id.ArtPro) Art_Hours = 5f;
+ Final();
} else Art_Hours = 0f;
});
} else {
diff --git a/app/src/main/java/com/rhinemann/project/Graph.java b/app/src/main/java/com/rhinemann/project/Graph.java
index 5ba16a0..7b85597 100644
--- a/app/src/main/java/com/rhinemann/project/Graph.java
+++ b/app/src/main/java/com/rhinemann/project/Graph.java
@@ -1,81 +1,87 @@
package com.rhinemann.project;
import android.content.Intent;
+import android.graphics.Color;
import android.os.Bundle;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
-import com.jjoe64.graphview.series.BarGraphSeries;
-import com.jjoe64.graphview.GraphView;
-import com.jjoe64.graphview.series.DataPoint;
-import com.jjoe64.graphview.DefaultLabelFormatter;
+import com.github.mikephil.charting.charts.BarChart;
+import com.github.mikephil.charting.components.XAxis;
+import com.github.mikephil.charting.data.BarData;
+import com.github.mikephil.charting.data.BarDataSet;
+import com.github.mikephil.charting.data.BarEntry;
+import com.github.mikephil.charting.formatter.IndexAxisValueFormatter;
+import com.github.mikephil.charting.utils.ColorTemplate;
+
+import java.util.ArrayList;
public class Graph extends AppCompatActivity {
Button Home;
-// BarChart Chart;
+ BarChart chart;
+ int[] Data;
+ String[] labels = {
+ "Фізика", "",
+ "Математика", "",
+ "Електро- та радіотехніка", "",
+ "Техніка", "",
+ "Хімія", "",
+ "Біологія", "",
+ "Медицина", "",
+ "Географія", "",
+ "Історія", "",
+ "Філологія", "",
+ "Мистецтво", "",
+ "Педагогіка", "",
+ "Психологія, філософія", "",
+ "Бізнес", "",
+ "Сфера обслуговувуння", "",
+ "Військова справа", "",
+ "Спорт", "",
+ };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_graph);
- GraphView Graph = findViewById(R.id.Graph);
+ chart = findViewById(R.id.Graph);
- final String[] XAxis = {"Фізика", "Математика", "Електро- та \nрадіотехніка", "Техніка", "Хімія", "Біологія", "Медицина", "Географія", "Історія", "Філологія", "Мистецтво", "Педагогіка", "Психологія, \nфілософія", "Бізнес", "Сфера \nобслуговувуння", "Військова \nсправа", "Спорт"};
+ ArrayList barEntries = new ArrayList<>();
- int[] Data = getIntent().getIntArrayExtra("profileAnswers");
-
- BarGraphSeries series = new BarGraphSeries<>();
-
- for (int i=0; i<17; i++){
- assert Data != null;
- series.appendData(new DataPoint(i*2, Data[i]),true,18);
+ Data = getIntent().getIntArrayExtra("profileAnswers");
+ for (int i = 0; i < (Data != null ? Data.length : 0); i++) {
+ barEntries.add(new BarEntry(i*2, Data[i]));
}
- series.appendData(new DataPoint(17*2, 0),true,18);
+ BarDataSet barDataSet = new BarDataSet(barEntries, "profileAnswers");
+ barDataSet.setColors(ColorTemplate.MATERIAL_COLORS);
+ barDataSet.setValueTextColor(Color.BLACK);
+ barDataSet.setDrawValues(false);
- series.setColor(R.color.colorPrimary);
- series.setSpacing(20);//Spacing
- series.setDrawValuesOnTop(true);// draw values on top
+ BarData barData = new BarData(barDataSet);
- Graph.addSeries(series);
+ XAxis xAxis = chart.getXAxis();
- Graph.setTitle("Орієнтовний графік");
- Graph.setTitleTextSize(50);
- Graph.setTitleColor(R.color.colorAccent);
+ xAxis.setYOffset(0f);
+ xAxis.setXOffset(0f);
+ xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
+ xAxis.setDrawGridLines(false);
+ xAxis.setTextSize(16f);
+ xAxis.setValueFormatter(new IndexAxisValueFormatter(labels));
- Graph.getLegendRenderer().setVisible(false);
-
-
- // set manual Y bounds
- Graph.getViewport().setYAxisBoundsManual(true);
- Graph.getViewport().setMinY(0);
- Graph.getViewport().setMaxY(15);
-
- // set manual X bounds
- Graph.getViewport().setXAxisBoundsManual(true);
- Graph.getViewport().setMinX(0);
- Graph.getViewport().setMaxX(7);
-
- //set horizontal scrolling
- Graph.getViewport().setScrollable(true);
-
- Graph.getGridLabelRenderer().setTextSize(30);
- Graph.getGridLabelRenderer().reloadStyles();
- Graph.getGridLabelRenderer().setPadding(10);
-
- Graph.getGridLabelRenderer().setLabelFormatter(new DefaultLabelFormatter(){
- @Override
- public String formatLabel(double value, boolean isValueX) {
- if (isValueX){
- return (XAxis[(int) (value/2)]);
- } else {
- return super.formatLabel(value, false);
- }
- }
- });
+ chart.setFitBars(true);
+ chart.setDrawBarShadow(false);
+ chart.setData(barData);
+ chart.getDescription().setEnabled(false);
+ chart.getLegend().setEnabled(false);
+ chart.setVisibleXRangeMaximum(3.8f);
+ chart.setScaleY(1f);
+ chart.getAxisRight().setEnabled(false);
+ chart.getAxisLeft().setEnabled(false);
+ chart.setDrawGridBackground(false);
Home = findViewById(R.id.home);
diff --git a/app/src/main/java/com/rhinemann/project/MBTI.java b/app/src/main/java/com/rhinemann/project/MBTI.java
index 561c132..c8ed6ec 100644
--- a/app/src/main/java/com/rhinemann/project/MBTI.java
+++ b/app/src/main/java/com/rhinemann/project/MBTI.java
@@ -10,7 +10,7 @@ import android.widget.TextView;
public class MBTI extends AppCompatActivity {
Integer questionId;
- TextView MBTIQuestion, MBTIAnswer;
+ TextView MBTIQuestion, MBTIAnswer, QuestionTracker;
String[] MBTIQuestions, MBTIAnswers;
String Result;
char[] ResultChar;
@@ -25,6 +25,7 @@ public class MBTI extends AppCompatActivity {
MBTIQuestion = findViewById(R.id.MBTI_Question);
MBTIAnswer = findViewById(R.id.MBTI_Answer);
+ QuestionTracker = findViewById(R.id.tracker);
MBTIQuestions = getResources().getStringArray(R.array.MBTI_Questions);
MBTIAnswers = getResources().getStringArray(R.array.MBTI_Answers);
@@ -39,6 +40,8 @@ public class MBTI extends AppCompatActivity {
MBTIQuestion.setText(MBTIQuestions[questionId]);
MBTIAnswer.setText(MBTIAnswers[questionId]);
+ QuestionTracker.setText(String.format("%s/%s", questionId + 1, MBTIQuestions.length));
+
aButton.setOnClickListener(v -> {
switch (questionId) {
case 0:
@@ -63,6 +66,7 @@ public class MBTI extends AppCompatActivity {
MBTIQuestion.setText(MBTIQuestions[questionId]);
MBTIAnswer.setText(MBTIAnswers[questionId]);
} else { MBTIResult(); }
+ QuestionTracker.setText(String.format("%s/%s", questionId + 1, MBTIQuestions.length));
});
bButton.setOnClickListener(v -> {
@@ -84,11 +88,12 @@ public class MBTI extends AppCompatActivity {
Result = String.valueOf(ResultChar);
- if (questionId < 3) {
+ if (questionId < MBTIQuestions.length - 1) {
questionId++;
MBTIQuestion.setText(MBTIQuestions[questionId]);
MBTIAnswer.setText(MBTIAnswers[questionId]);
} else { MBTIResult(); }
+ QuestionTracker.setText(String.format("%s/%s", questionId + 1, MBTIQuestions.length));
});
Home = findViewById(R.id.home);
diff --git a/app/src/main/java/com/rhinemann/project/MBTIResult.java b/app/src/main/java/com/rhinemann/project/MBTIResult.java
index 0c7030f..814f9e7 100644
--- a/app/src/main/java/com/rhinemann/project/MBTIResult.java
+++ b/app/src/main/java/com/rhinemann/project/MBTIResult.java
@@ -15,7 +15,7 @@ public class MBTIResult extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_mbtiresult);
+ setContentView(R.layout.activity_mbti_result);
Result = findViewById(R.id.Result);
Explanation = findViewById(R.id.Explanation);
diff --git a/app/src/main/java/com/rhinemann/project/Profile.java b/app/src/main/java/com/rhinemann/project/Profile.java
index 1584b68..eb42767 100644
--- a/app/src/main/java/com/rhinemann/project/Profile.java
+++ b/app/src/main/java/com/rhinemann/project/Profile.java
@@ -11,7 +11,7 @@ public class Profile extends AppCompatActivity {
Integer questionId, discipline;
int[] profileAnswers;
- TextView profileQuestion;
+ TextView profileQuestion, QuestionTracker;
String[] profileQuestions;
@Override
@@ -21,13 +21,14 @@ public class Profile extends AppCompatActivity {
profileQuestions = getResources().getStringArray(R.array.Profile_Questions);
profileQuestion = findViewById(R.id.Profile_Question);
+ QuestionTracker = findViewById(R.id.tracker);
+
questionId = 0;
discipline = 0;
profileAnswers = new int[]{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
profileQuestion.setText(profileQuestions[questionId]);
-
-
+ QuestionTracker.setText(String.format("%s/%s", questionId + 1, profileQuestions.length));
//Кнопка плюс
Button plusButton = findViewById(R.id.Button_Plus);
@@ -64,7 +65,7 @@ public class Profile extends AppCompatActivity {
}
public void Test(int amount) {
- if (questionId < 102){
+ if (questionId < profileQuestions.length - 1){
questionId ++;
profileQuestion.setText(profileQuestions[questionId]);
} else {
@@ -78,6 +79,7 @@ public class Profile extends AppCompatActivity {
} else {
discipline ++;
}
+ QuestionTracker.setText(String.format("%s/%s", questionId + 1, profileQuestions.length));
}
public void graphResult() {
diff --git a/app/src/main/java/com/rhinemann/project/Temper.java b/app/src/main/java/com/rhinemann/project/Temper.java
index b18e84a..0a813fc 100644
--- a/app/src/main/java/com/rhinemann/project/Temper.java
+++ b/app/src/main/java/com/rhinemann/project/Temper.java
@@ -11,7 +11,7 @@ public class Temper extends AppCompatActivity {
Integer questionId, temper;
int[] temperAnswers;
- TextView temperQuestion;
+ TextView temperQuestion, QuestionTracker;
String[] temperQuestions;
@Override
@@ -21,11 +21,14 @@ public class Temper extends AppCompatActivity {
temperQuestions = getResources().getStringArray(R.array.Temper_Questions);
temperQuestion = findViewById(R.id.Temper_Question);
+ QuestionTracker = findViewById(R.id.tracker);
+
questionId = 0;
temper = 0;
temperAnswers = new int[]{0, 0, 0, 0};
temperQuestion.setText(temperQuestions[questionId]);
+ QuestionTracker.setText(String.format("%s/%s", questionId + 1, temperQuestions.length));
Button yesButton = findViewById(R.id.Button_Yes);
@@ -57,12 +60,13 @@ public class Temper extends AppCompatActivity {
temperAnswers[temper] += amount;
- if (questionId < 79) {
+ if (questionId < temperQuestions.length - 1) {
questionId ++;
temperQuestion.setText(temperQuestions[questionId]);
} else {
graphResult();
}
+ QuestionTracker.setText(String.format("%s/%s", questionId + 1, temperQuestions.length));
}
public void graphResult(){
diff --git a/app/src/main/java/com/rhinemann/project/TemperResult.java b/app/src/main/java/com/rhinemann/project/TemperResult.java
index 1202184..a93fbec 100644
--- a/app/src/main/java/com/rhinemann/project/TemperResult.java
+++ b/app/src/main/java/com/rhinemann/project/TemperResult.java
@@ -8,6 +8,7 @@ import android.os.Bundle;
import android.widget.Button;
import com.github.mikephil.charting.charts.RadarChart;
+import android.graphics.Color;
import com.github.mikephil.charting.components.XAxis;
import com.github.mikephil.charting.data.RadarData;
import com.github.mikephil.charting.data.RadarDataSet;
@@ -20,9 +21,8 @@ public class TemperResult extends AppCompatActivity {
RadarChart radarChart;
Button homeButton;
-
int[] Data;
- String[] labels = {"Choleric", "Sanguine", "Phlegmatic", "Melancholic"};
+ String[] labels = {"Холерик", "Сангвінік", "Флегматик", "Меланхолік"};
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -33,30 +33,29 @@ public class TemperResult extends AppCompatActivity {
radarChart = findViewById(R.id.Graph);
+
RadarDataSet dataSet = new RadarDataSet(dataValues(), "Tempers");
dataSet.setColor(R.color.colorPrimary);
dataSet.setFillColor(R.color.colorAccent);
dataSet.setLineWidth(2f);
dataSet.setDrawFilled(true);
+ dataSet.setFillAlpha(200);
RadarData data = new RadarData();
data.addDataSet(dataSet);
-
data.setDrawValues(false);
XAxis xAxis = radarChart.getXAxis();
+ xAxis.setYOffset(0f);
+ xAxis.setXOffset(0f);
xAxis.setValueFormatter(new IndexAxisValueFormatter(labels));
radarChart.setData(data);
radarChart.getDescription().setEnabled(false);
radarChart.getLegend().setEnabled(false);
- radarChart.setRotationEnabled(false);
- radarChart.getXAxis().setTextSize(15f);
- radarChart.getXAxis().setAxisMaximum(20f);
- radarChart.getXAxis().setAxisMinimum(-20f);
- radarChart.getYAxis().setAxisMaximum(20f);
- radarChart.getYAxis().setAxisMinimum(-20f);
+ radarChart.getXAxis().setTextSize(16f);
+ radarChart.getYAxis().setEnabled(false);
homeButton = findViewById(R.id.home);
homeButton.setOnClickListener(v -> {
@@ -66,12 +65,15 @@ public class TemperResult extends AppCompatActivity {
}
@NonNull
- private ArrayListdataValues(){
+ private ArrayList dataValues(){
ArrayList Tempers = new ArrayList<>();
- Tempers.add(new RadarEntry(Data[0]));
- Tempers.add(new RadarEntry(Data[1]));
- Tempers.add(new RadarEntry(Data[2]));
- Tempers.add(new RadarEntry(Data[3]));
+ for (int i : Data) {
+ if (i < 2) {
+ Tempers.add(new RadarEntry(1));
+ } else {
+ Tempers.add(new RadarEntry(i));
+ }
+ }
return Tempers;
}
diff --git a/app/src/main/res/drawable/hexagon1.xml b/app/src/main/res/drawable/hexagon1.xml
index 227102a..d65400f 100644
--- a/app/src/main/res/drawable/hexagon1.xml
+++ b/app/src/main/res/drawable/hexagon1.xml
@@ -3,7 +3,8 @@
android:width="170dp"
android:height="170dp"
android:viewportWidth="512"
- android:viewportHeight="512">
+ android:viewportHeight="512"
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_about.xml b/app/src/main/res/layout/activity_about.xml
index 6b8b23a..1d4a61f 100644
--- a/app/src/main/res/layout/activity_about.xml
+++ b/app/src/main/res/layout/activity_about.xml
@@ -5,17 +5,46 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".About"
- android:background="@drawable/background_light">
+ android:background="@drawable/background_very_light"
+ >
+ />
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_calculator.xml b/app/src/main/res/layout/activity_calculator.xml
index c9af526..3faf0b7 100644
--- a/app/src/main/res/layout/activity_calculator.xml
+++ b/app/src/main/res/layout/activity_calculator.xml
@@ -1,717 +1,762 @@
-
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@drawable/background_very_light"
+ >
-
+ android:layout_height="match_parent"
+ android:fillViewport="true"
+ >
-
+ android:layout_height="wrap_content"
+ >
-
+ android:layout_height="match_parent"
+ android:padding="10dp"
+ >
-
-
-
-
-
-
-
-
-
-
-
+ android:text="@string/Lessons"
+ android:textSize="@dimen/header_2_size"
+ app:layout_constraintLeft_toLeftOf="parent"
+ app:layout_constraintTop_toBottomOf="@+id/textView4"
+ />
-
+ android:text="Базові предмети"
+ android:textFontWeight="500"
+ android:textSize="@dimen/header_2_size"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toTopOf="parent"
+ />
-
-
-
-
-
+ android:text="Стандарт(10+11)"
+ android:textFontWeight="500"
+ android:textSize="16sp"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toTopOf="parent"
+ />
-
+ android:text="Профіль(10+11)"
+ android:textFontWeight="500"
+ android:textSize="16sp"
+ app:layout_constraintStart_toEndOf="@+id/textView5"
+ app:layout_constraintTop_toTopOf="parent"
+ android:layout_marginStart="10dp"
+ />
-
-
-
-
-
+ android:text=""
+ android:textSize="@dimen/header_2_size"
+ android:textFontWeight="500"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toBottomOf="@+id/Lessons"
+ />
-
+ android:layout_height="@dimen/RG_Height"
+ android:baselineAligned="false"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toTopOf="@+id/Lessons"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/UALan"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/UALit"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/FLit"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/FLan"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/UAHist"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/FHist"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/AnFLan"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Math"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Alg"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Geom"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/PhysAstr"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/BioEco"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Chem"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Geo"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/PE"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Milit"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/SocEd"
+ >
-
+
+
+
+
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Law"
+ >
-
+
-
+
-
+
+
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Econ"
+ >
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
+ android:layout_height="@dimen/RG_Height"
+ app:layout_constraintStart_toEndOf="@+id/IT"
+ app:layout_constraintTop_toTopOf="@+id/IT"
+ />
-
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/IT"
+ >
+
+
+
+
+
+
-
-
-
-
-
-
+ android:layout_height="@dimen/RG_Height"
+ app:layout_constraintStart_toEndOf="@+id/Tech"
+ app:layout_constraintTop_toTopOf="@+id/Tech"
+ />
-
+ android:layout_height="@dimen/RG_Height"
+ android:orientation="horizontal"
+ app:layout_constraintStart_toEndOf="@+id/Lessons"
+ app:layout_constraintTop_toBottomOf="@+id/Tech">
+
+
+
+
+
+
+ android:layout_width="wrap_content"
+ android:layout_height="@dimen/RG_Height"
+ app:layout_constraintStart_toEndOf="@+id/Art"
+ app:layout_constraintTop_toTopOf="@+id/Art"
+ />
-
+
+
+
+
+
+
+
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_graph.xml b/app/src/main/res/layout/activity_graph.xml
index 64f457d..baf96ac 100644
--- a/app/src/main/res/layout/activity_graph.xml
+++ b/app/src/main/res/layout/activity_graph.xml
@@ -3,46 +3,30 @@
+ android:layout_height="match_parent"
+ android:background="@drawable/background_very_light"
+ android:orientation="vertical">
-
+
-
-
-
-
-
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/toMain"
+ android:textFontWeight="500"
+ android:textColor="@color/colorAccent"
+ android:textSize="@dimen/header_size"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toEndOf="parent" />
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_home_screen.xml b/app/src/main/res/layout/activity_home_screen.xml
index da31363..ed92264 100644
--- a/app/src/main/res/layout/activity_home_screen.xml
+++ b/app/src/main/res/layout/activity_home_screen.xml
@@ -10,14 +10,16 @@
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="50dp"
+ android:layout_marginTop="@dimen/top_margin_text"
android:text="@string/app_name"
+ android:textFontWeight="700"
android:textAlignment="center"
android:textColor="#FFFFFF"
- android:textSize="50dp"
+ android:textSize="@dimen/title_size"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintTop_toTopOf="parent"
+ />
+ android:background="@drawable/hexagon1"
+ />
+ android:background="@drawable/hexagon2"
+ />
+ android:background="@drawable/hexagon3"
+ />
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_instruction.xml b/app/src/main/res/layout/activity_instruction.xml
index 2d0c160..77d0052 100644
--- a/app/src/main/res/layout/activity_instruction.xml
+++ b/app/src/main/res/layout/activity_instruction.xml
@@ -6,49 +6,70 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Instruction"
- android:background="@drawable/background_light">
-
-
+ android:background="@drawable/background_very_light"
+ >
+ app:layout_constraintTop_toTopOf="parent"
+ />
-
+ app:layout_constraintTop_toBottomOf="@+id/header"
+ >
+
+
+
+
+ android:textColor="@color/colorAccent"
+ android:textSize="@dimen/header_size"
+ />
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_mbti.xml b/app/src/main/res/layout/activity_mbti.xml
index 2bcf742..672dd7c 100644
--- a/app/src/main/res/layout/activity_mbti.xml
+++ b/app/src/main/res/layout/activity_mbti.xml
@@ -1,64 +1,105 @@
-
+ android:background="@drawable/background_very_light"
+ >
+ app:layout_constraintTop_toTopOf="parent"
+ />
-
+ app:layout_constraintTop_toTopOf="parent"
+ >
+
+
+
+
+
+
+
+
+
+
+ app:layout_constraintBottom_toBottomOf="parent"
+ android:background="@drawable/hexagon_button"
+ />
+ app:layout_constraintTop_toTopOf="@+id/Button_A"
+ android:background="@drawable/hexagon_button"
+ />
+ />
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_mbtiresult.xml b/app/src/main/res/layout/activity_mbti_result.xml
similarity index 55%
rename from app/src/main/res/layout/activity_mbtiresult.xml
rename to app/src/main/res/layout/activity_mbti_result.xml
index 57404e8..ee2038b 100644
--- a/app/src/main/res/layout/activity_mbtiresult.xml
+++ b/app/src/main/res/layout/activity_mbti_result.xml
@@ -5,44 +5,47 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MBTIResult"
- android:background="@drawable/background_light">
+ android:background="@drawable/background_very_light"
+ >
+ app:layout_constraintTop_toTopOf="parent"
+ />
+ app:layout_constraintTop_toBottomOf="@+id/Result"
+ />
+ android:textColor="@color/colorAccent"
+ android:textSize="@dimen/header_size"
+ />
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_profile.xml b/app/src/main/res/layout/activity_profile.xml
index e6fc451..52497b1 100644
--- a/app/src/main/res/layout/activity_profile.xml
+++ b/app/src/main/res/layout/activity_profile.xml
@@ -3,45 +3,71 @@
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="@drawable/background_light">
+ android:background="@drawable/background_very_light">
+ app:layout_constraintTop_toTopOf="parent"
+ />
+
+
+
+
+
+
+
+ app:layout_constraintBottom_toTopOf="@id/Button_Plus"
+ />
+ app:layout_constraintBottom_toBottomOf="parent"
+ />
+ app:layout_constraintTop_toTopOf="@+id/Button_Double_Plus"
+ />
+ app:layout_constraintTop_toTopOf="@+id/Button_Plus"
+ />
+ app:layout_constraintTop_toTopOf="@+id/Button_Double_Plus"
+ />
+ android:textColor="@color/colorAccent"
+ android:textSize="@dimen/header_size"
+ />
diff --git a/app/src/main/res/layout/activity_temper.xml b/app/src/main/res/layout/activity_temper.xml
index 786791c..7643db7 100644
--- a/app/src/main/res/layout/activity_temper.xml
+++ b/app/src/main/res/layout/activity_temper.xml
@@ -5,18 +5,28 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Temper"
- android:background="@drawable/background_light">
+ android:background="@drawable/background_very_light">
+
+
@@ -25,30 +35,40 @@
android:id="@+id/Button_Yes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginTop="200dp"
+ android:layout_marginBottom="150dp"
android:text="Так"
+ android:textFontWeight="500"
+ android:textSize="@dimen/header_2_size"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toStartOf="@id/Button_No"
- app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintBottom_toBottomOf="parent"
+ android:background="@drawable/hexagon_button"
+ />
+ app:layout_constraintTop_toTopOf="@+id/Button_Yes"
+ android:background="@drawable/hexagon_button"
+ />
+ android:textColor="@color/colorAccent"
+ android:textSize="@dimen/header_size"
+ />
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_temper_result.xml b/app/src/main/res/layout/activity_temper_result.xml
index 5f85a04..d383ff7 100644
--- a/app/src/main/res/layout/activity_temper_result.xml
+++ b/app/src/main/res/layout/activity_temper_result.xml
@@ -4,45 +4,30 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
- android:background="@drawable/background_light">
-
-
+ android:background="@drawable/background_very_light"
+ >
+ android:layout_height="0dp"
+ android:layout_margin="10dp"
+ android:layout_weight="1"
+ />
-
-
-
+ android:textColor="@color/colorAccent"
+ android:textSize="@dimen/header_size"
+ />
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_tests.xml b/app/src/main/res/layout/activity_tests.xml
index f836b56..d182159 100644
--- a/app/src/main/res/layout/activity_tests.xml
+++ b/app/src/main/res/layout/activity_tests.xml
@@ -1,64 +1,73 @@
-
+ android:background="@drawable/background_dark"
+ tools:context=".Tests">
+ app:layout_constraintTop_toTopOf="parent" />
+ app:layout_constraintTop_toBottomOf="@+id/Button_Temper" />
+ app:layout_constraintTop_toBottomOf="@+id/Button_Profile" />
+ android:textFontWeight="500"
+ android:textSize="@dimen/header_size"
+ app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintStart_toStartOf="parent" />
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index d8384ec..bcc2f37 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -1,12 +1,15 @@
- 22sp
- 21sp
- 62sp
- 38sp
- 79sp
- 20sp
- 180dp
- 16dp
- 16dp
+ 23.5sp
+ 65sp
+ 41sp
+ 82sp
+
+ 20dp
+ 40dp
+
+ 70sp
+ 30sp
+ 20sp
+ 18sp
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index ac0b8f2..fa98f0e 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,29 +1,38 @@
PROFiK
- " Українська Мова \n"
- "Українська література\n"
- "Зарубіжна література\n"
- "Іноземна мова\n"
- "Історія України\n"
- "Всесвітня історія\n"
- "Друга іноземна мова\n"
- "Математика\n"
- "Алгебра\n"
- "Геометрія\n"
- "Фізика та астрономія\n"
- "Біологія та екологія\n"
- "Хімія\n"
- "Географія\n"
- "Фізична культура\n"
- "Захист Вітчизни\n"
- "Громадянська освіта\n"
- "Правознавство\n"
- "Економіка\n"
- "Інформатика\n"
- "Технології\n"
- "Мистецтво"
+
+ Українська Мова
+ \nУкраїнська література
+ \nЗарубіжна література
+ \nІноземна мова
+ \nІсторія України
+ \nВсесвітня історія
+ \nДруга іноземна мова
+ \nМатематика
+ \nАлгебра
+ \nГеометрія
+ \nФізика та астрономія
+ \nБіологія та екологія
+ \nХімія
+ \nГеографія
+ \nФізична культура
+ \nЗахист Вітчизни
+ \nГромадянська освіта
+ \nПравознавство
+ \nЕкономіка
+ \nІнформатика
+ \nТехнології
+ \nМистецтво
+ Інструкція
- Якщо Вам дуже подобається робити те, про що йдеться у запитанні, то поставте у відповідній клітинці два плюси (++), а якщо просто подобається - то один плюс (+). Може статися так, що Ви ніяк не можете визначити, чи подобається Вам це робити, чи ні. Тоді поставте у відповідну клітинку нуль (0). Коли ж Ви визначили, що вам зовсім не подобається робити те, про що йдеться у запитанні, то у відповідній клітинці поставте один мінус (-), а коли це Вам дуже не подобається, то два мінуси (- -). Якщо на якесь запитання у Вас виникне одразу дві протилежні відповіді, або відповідь, що залежить від якоїсь додаткової умови. Наприклад: «Якби це було вдома, то мені подобається, а якщо в іншому місці, то зовсім не подобається». У такому разі самостійно і швидко визначте самі, яка з цих позначок - плюс, мінус чи нуль - є, на Вашу думку, найближчою до істини, і її поставте у відповідну клітинку.
+
+ Якщо Вам дуже подобається робити те, про що йдеться у запитанні, то поставте у відповідній клітинці два плюси (++), а якщо просто подобається - то один плюс (+).
+ \nМоже статися так, що Ви ніяк не можете визначити, чи подобається Вам це робити, чи ні.
+ \nТоді поставте у відповідну клітинку нуль (0). Коли ж Ви визначили, що вам зовсім не подобається робити те, про що йдеться у запитанні, то у відповідній клітинці поставте один мінус (-), а коли це Вам дуже не подобається, то два мінуси (--).
+ \nЯкщо на якесь запитання у Вас виникне одразу дві протилежні відповіді, або відповідь, що залежить від якоїсь додаткової умови.
+ \nНаприклад: «Якби це було вдома, то мені подобається, а якщо в іншому місці, то зовсім не подобається».
+ \nУ такому разі самостійно і швидко визначте самі, яка з цих позначок - плюс, мінус чи нуль - є, на Вашу думку, найближчою до істини, і її поставте у відповідну клітинку.
+ Читати популярну літературу з фізики.
@@ -75,7 +84,7 @@
Знайомитися з новими теоріями загальної або практичної психології.Стежити за змінами валютних обмінних курсів.Піклуватися про порядок і комфорт у своєму домі.
- Брати участь у військовій підготовці".
+ Брати участь у військовій підготовці.Брати участь у спортивних іграх.Працювати у фізичному гуртку або займатися самоосвітою з фізики.Працювати у математичному гуртку або займатися самоосвітою з математики.
@@ -93,7 +102,7 @@
Давати поради людям (товаришам, родичам або добрим знайомим) щодо вигідного вкладання грошей у приватні або державні заходи.Надавати людям різні побутові послуги.Брати участь у військових іграх або походах.
- Брати участь у спортивних змагашіях.
+ Брати участь у спортивних змаганнях.Брати участь у конкурсах з фізики.Брати участь у конкурсах з математики.Складати або ремонтувати радіотехнічні прилади.
@@ -221,95 +230,117 @@
- А) Подзвоню друзям, дізнаюся, які у них плани. Чув, відкрився новий ресторан / в кіно вийшла комедія / в пейнтбольному клубі знижки. Потрібно вибратися всім разом. \n
- Б) Переведу телефон в режим «Не турбувати», залишуся вдома. Включу новий епізод улюбленого серіалу, зберу пазл, полежу в ванні з книжкою.
- А) Найважливіше для мене те, що відбувається тут і зараз. Я відштовхуюсь від реального стану справ, звертаю увагу на деталі. \n
- Б) Факти - це нудно. Я люблю мріяти і складати сценарії майбутніх подій. Найбільш охоче покладаюся на інтуїцію, ніж на якісь дані.
- А) Вивчу всю доступну інформацію про компанію-конкурента, пораджуся зі знайомим HR-менеджером, намалюю таблицю «за і проти». У таких справах важливо все тверезо оцінити і зважити. \n
- Б) Прислухаюся до власних почуттів і відчуттів. Завжди намагаюся слідувати покликом серця.
- А) Я вже місяць тому вибрав саксофоніста, який виконає попурі з пісень наших шкільних років / зібрав презентацію з фотографій пари з моменту їхнього знайомства / склав вірш / випрасував костюм / записалася на макіяж і укладку. Вважаю за краще бути у всеозброєнні. \n
- Б) Навіщо готуватися? Я буду веселитися і насолоджуватися святом, а тост скажу експромтом, від душі. Все найкраще трапляється спонтанно.
+
+ А) Подзвоню друзям, дізнаюся, які у них плани. Чув, відкрився новий ресторан / в кіно вийшла комедія / в пейнтбольному клубі знижки. Потрібно вибратися всім разом.
+ \nБ) Переведу телефон в режим «Не турбувати», залишуся вдома. Включу новий епізод улюбленого серіалу, зберу пазл, полежу в ванні з книжкою.
+
+
+ А) Найважливіше для мене те, що відбувається тут і зараз. Я відштовхуюсь від реального стану справ, звертаю увагу на деталі.
+ \nБ) Факти - це нудно. Я люблю мріяти і складати сценарії майбутніх подій. Найбільш охоче покладаюся на інтуїцію, ніж на якісь дані.
+
+
+ А) Вивчу всю доступну інформацію про компанію-конкурента, пораджуся зі знайомим HR-менеджером, намалюю таблицю «за і проти». У таких справах важливо все тверезо оцінити і зважити.
+ \nБ) Прислухаюся до власних почуттів і відчуттів. Завжди намагаюся слідувати покликом серця.
+
+
+ А) Я вже місяць тому вибрав саксофоніста, який виконає попурі з пісень наших шкільних років / зібрав презентацію з фотографій пари з моменту їхнього знайомства / склав вірш / випрасував костюм / записалася на макіяж і укладку. Вважаю за краще бути у всеозброєнні.
+ \nБ) Навіщо готуватися? Я буду веселитися і насолоджуватися святом, а тост скажу експромтом, від душі. Все найкраще трапляється спонтанно.
+
- "Ви - Керівник.\n"
- "Керівники – це основні шанувальники традицій і порядку, завдяки своєму уявленню про те, що є правильним, неправильним і соціально прийнятним, вони об’єднують сім’ї і спільноти. Вони наділені такими якостями, як порядність, відданість і гідність, тому людей з типом особистості Керівник цінують за їхні чіткі поради та вказівки, а вони з радістю допомагають іншим знайти вихід у складних ситуаціях. Відчуваючи гордість за те, що вони об’єднують людей, Керівники часто беруть на себе ролі організаторів громадських спільнот та старанно працюють, щоб зібрати всіх разом на святкування важливих місцевих подій чи на захист традиційних цінностей, які об’єднують родини і спільноти.\n"
- "Рекомендовані для вас професії: Генеральний директор, страховий агент, спеціаліст з кредитування, шкільний директор, шеф-кухар."
+ Ви - Керівник.
+ \nКерівники – це основні шанувальники традицій і порядку, завдяки своєму уявленню про те, що є правильним, неправильним і соціально прийнятним, вони об’єднують сім’ї і спільноти. Вони наділені такими якостями, як порядність, відданість і гідність, тому людей з типом особистості Керівник цінують за їхні чіткі поради та вказівки, а вони з радістю допомагають іншим знайти вихід у складних ситуаціях. Відчуваючи гордість за те, що вони об’єднують людей, Керівники часто беруть на себе ролі організаторів громадських спільнот та старанно працюють, щоб зібрати всіх разом на святкування важливих місцевих подій чи на захист традиційних цінностей, які об’єднують родини і спільноти.
+ \nРекомендовані для вас професії: Генеральний директор, страховий агент, спеціаліст з кредитування, шкільний директор, шеф-кухар.
- "Ви - Логіст\n"
- "Тип особистості Логіст вважається найпоширенішим і складає біля 13% населення. Завдяки таким їхнім визначним характеристикам як порядність, практична логіка та невтомна відданість Логісти є життєво важливою серцевиною будь-якої родини, а також організацій, що дотримуються традицій, правил і стандартів – це наприклад, адвокатські контори, розпорядчі органи і армія. Люди типу Логіст воліють відповідати за свої вчинки і пишатися роботою, яку вони виконують; коли вони працюють над поставленим завданням, вони не шкодують ні сил, ні енергії, виконуючи його акуратно і терпляче.\n"
- "Рекомендовані для вас професії: Економіст, інспеккор з нагляду, логістик, системний адміністратор, офіс менеджер."
+ Ви - Логіст
+ \nТип особистості Логіст вважається найпоширенішим і складає біля 13% населення. Завдяки таким їхнім визначним характеристикам як порядність, практична логіка та невтомна відданість Логісти є життєво важливою серцевиною будь-якої родини, а також організацій, що дотримуються традицій, правил і стандартів – це наприклад, адвокатські контори, розпорядчі органи і армія. Люди типу Логіст воліють відповідати за свої вчинки і пишатися роботою, яку вони виконують; коли вони працюють над поставленим завданням, вони не шкодують ні сил, ні енергії, виконуючи його акуратно і терпляче.
+ \nРекомендовані для вас професії: Економіст, інспеккор з нагляду, логістик, системний адміністратор, офіс менеджер.
- "Ви - Підприємець\n"
- "Підприємці завжди мають вплив на своє безпосереднє оточення: найкращий спосіб розпізнати їх на вечірці – це поглянути на вихор людей, що крутиться навколо них, коли вони рухаються від однієї компанії до іншої. Сміючись, розважаючись та жартуючи з прямолінійним і життєвим гумором, Підприємці люблять бути в центрі уваги. Якщо когось із публіки просять вийти на сцену, Підприємець буде добровольцем – або висуне добровольцем свого сором’язливого друга.\n"
- "Рекомендовані для вас професії: Підрядник, слідчий, фінансовий консультант, спеціаліст з продажу, військовий."
+ Ви - Підприємець
+ \nПідприємці завжди мають вплив на своє безпосереднє оточення: найкращий спосіб розпізнати їх на вечірці – це поглянути на вихор людей, що крутиться навколо них, коли вони рухаються від однієї компанії до іншої. Сміючись, розважаючись та жартуючи з прямолінійним і життєвим гумором, Підприємці люблять бути в центрі уваги. Якщо когось із публіки просять вийти на сцену, Підприємець буде добровольцем – або висуне добровольцем свого сором’язливого друга.
+ \nРекомендовані для вас професії: Підрядник, слідчий, фінансовий консультант, спеціаліст з продажу, військовий.
- "Ви - Віртуоз\n"
- "Віртуози люблять досліджувати руками і очами, торкаючись та пізнаючи світ навколо них з холодним раціоналізмом та жвавою цікавістю. Люди з цим типом особистості – це природжені Творці, як просуваються від проекту до проекту, будуючи корисне й надмірне через те, що це весело, та вчаться на ходу з власного оточення. Часто вони є механіками і інженерами; Віртуози не знають більшої радості, ніж поринути в роботу з головою, розбираючи речі на частини, а потім збираючи їх назад, але трохи кращими, ніж вони були до цього.\n"
- "Рекомендовані для вас професії: Тесляр-столяр, спеціаліст з розробки апаратури, поліцейський, механік."
+ Ви - Віртуоз
+ \nВіртуози люблять досліджувати руками і очима, торкаючись та пізнаючи світ навколо них з холодним раціоналізмом та жвавою цікавістю. Люди з цим типом особистості – це природжені Творці, як просуваються від проекту до проекту, будуючи корисне й надмірне через те, що це весело, та вчаться на ходу з власного оточення. Часто вони є механіками і інженерами; Віртуози не знають більшої радості, ніж поринути в роботу з головою, розбираючи речі на частини, а потім збираючи їх назад, але трохи кращими, ніж вони були до цього.
+ \nРекомендовані для вас професії: Тесляр-столяр, спеціаліст з розробки апаратури, поліцейський, механік.
- "Ви - Командир\n"
- "Командири – це природжені лідери. Люди з цим типом особистості наділені харизмою і впевненістю, вони спрямовують свій авторитет таким чином, що він об’єднує натовпи задля однієї мети. Але на відміну від своїх більш емоційних колег Протагоністів, Командирів часто характеризує безкомпромісна раціональність, й вони використовують свою енергію, цілеспрямованість й гострий розум, щоб досяги поставлених цілей будь-якою ціною. Можливо, це навіть на краще, що таких особистостей серед нас всього три відсотки, інакше б вони переважили над більш скромними і чутливими типами особистостей, які складають більшість населення світу, – але ми повинні дякувати їм за створення багатьох компаній і організацій, які ми сьогодні сприймаємо як належне.\n"
- "Рекомендовані для вас професії: Виконавчий директор, інженер, адвокат, лікар, архітектор."
+ Ви - Командир
+ \nКомандири – це природжені лідери. Люди з цим типом особистості наділені харизмою і впевненістю, вони спрямовують свій авторитет таким чином, що він об’єднує натовпи задля однієї мети. Але на відміну від своїх більш емоційних колег Протагоністів, Командирів часто характеризує безкомпромісна раціональність, й вони використовують свою енергію, цілеспрямованість й гострий розум, щоб досяги поставлених цілей будь-якою ціною. Можливо, це навіть на краще, що таких особистостей серед нас всього три відсотки, інакше б вони переважили над більш скромними і чутливими типами особистостей, які складають більшість населення світу, – але ми повинні дякувати їм за створення багатьох компаній і організацій, які ми сьогодні сприймаємо як належне.
+ \nРекомендовані для вас професії: Виконавчий директор, інженер, адвокат, лікар, архітектор.
- "Ви - Архітектор\n"
- "На горі одиноко, і оскільки Архітектори – одні з найрідкісніших й найстратегічніших типів особистості, вони знають все це занадто добре. Архітектори складають лише два відсотки населення, а жінки, що належать до цього типу особистості, особливо рідкісні та складають лише 0,8% населення, тому для них завжди справжнє випробування – знайти однодумців, які здатні встигати за їхньою неперевершеною інтелектуальністю і подібним до гри у шахи маневруванням. Люди з типом особистості Архітектор мрійливі і в той самий час рішучі; амбіційні, але люблять приватність; надзвичайно допитливі, але не марнотратять свою енергію.\n"
- "Рекомендовані для вас професії: Розробник ПЗ, Розробник техдокументації, суддя, мікробіолог, хірург."
+ Ви - Архітектор
+ \nНа горі одиноко, і оскільки Архітектори – одні з найрідкісніших й найстратегічніших типів особистості, вони знають все це занадто добре. Архітектори складають лише два відсотки населення, а жінки, що належать до цього типу особистості, особливо рідкісні та складають лише 0,8% населення, тому для них завжди справжнє випробування – знайти однодумців, які здатні встигати за їхньою неперевершеною інтелектуальністю і подібним до гри у шахи маневруванням. Люди з типом особистості Архітектор мрійливі і в той самий час рішучі; амбіційні, але люблять приватність; надзвичайно допитливі, але не марнотратять свою енергію.
+ \nРекомендовані для вас професії: Розробник ПЗ, Розробник техдокументації, суддя, мікробіолог, хірург.
- "Ви - Полеміст\n"
- "Полеміст – це справжній адвокат диявола, який обожнює розривати на шматки аргументи й переконання, дозволяючи клаптикам розлетітися за вітром, щоб всі це побачили. На відміну від їхніх більш цілеспрямованих колег, Полемісти роблять це не тому, що вони намагаються досягти глибшої мети чи стратегічної цілі, а просто через те, що це весело. Ніхто не любить процес розумового боксу більше, ніж Полемісти, оскільки це дає їм шанс застосувати їхню невимушену кмітливість, широку базу накопичених знань та здатність поєднувати неспівставні ідеї, щоб довести свою точку зору.\n"
- "Рекомендовані для вас професії: Містобудівник, підприємець, режисер, продісер, агент з нерухомості, журналіст."
+ Ви - Полеміст
+ \nПолеміст – це справжній адвокат диявола, який обожнює розривати на шматки аргументи й переконання, дозволяючи клаптикам розлетітися за вітром, щоб всі це побачили. На відміну від їхніх більш цілеспрямованих колег, Полемісти роблять це не тому, що вони намагаються досягти глибшої мети чи стратегічної цілі, а просто через те, що це весело. Ніхто не любить процес розумового боксу більше, ніж Полемісти, оскільки це дає їм шанс застосувати їхню невимушену кмітливість, широку базу накопичених знань та здатність поєднувати неспівставні ідеї, щоб довести свою точку зору.
+ \nРекомендовані для вас професії: Містобудівник, підприємець, режисер, продюсер, агент з нерухомості, журналіст.
- "Ви - Логік\n"
- "Тип особистості Логік досить рідкісний – складає лише три відсотки населення, що, звичайно, добре для них, адже ніщо у світі не робить їх нещасними більше, ніж бути “такими як усі”. Логіки пишаються собою за свою винахідливість і креативність, унікальні погляди і розвинений інтелект. Зазвичай відомі як філософи, архітектори чи мрійливі професори, Логіки зробили багато наукових відкриттів протягом усієї історії.\n"
- "Рекомендовані для вас професії: Інженер технічної підтримки, медичний науковий співробітник, математик, психіатр, професор університету."
+
+ Ви - Логік
+ \nТип особистості Логік досить рідкісний – складає лише три відсотки населення, що, звичайно, добре для них, адже ніщо у світі не робить їх нещасними більше, ніж бути “такими як усі”. Логіки пишаються собою за свою винахідливість і креативність, унікальні погляди і розвинений інтелект. Зазвичай відомі як філософи, архітектори чи мрійливі професори, Логіки зробили багато наукових відкриттів протягом усієї історії.
+ \nРекомендовані для вас професії: Інженер технічної підтримки, медичний науковий співробітник, математик, психіатр, професор університету.
- "Ви - Консул\n"
- "Люди, які належать до типу особистості Консул, є популярними (за відсутності кращого слова), що логічно, беручи до уваги, що це також дуже поширений тип особистості – він складає дванадцять відсотків населення. У коледжі вони капітани групи підтримки і нападники в команді, що задають тон, завжди в центрі залу і ведуть свою команду вперед до перемоги і слави. Пізніше в житті Консули продовжують отримувати задоволення, підтримуючи власних друзів і коханих, організовуючи соціальні зібрання і роблячи все можливе, щоб упевнитися, що всі щасливі.\n"
- "Рекомендовані для вас професії: Вчитель початкових класів, директор дитсадка, дієтолог, косметолог, медсестра."
+
+ Ви - Консул
+ \nЛюди, які належать до типу особистості Консул, є популярними (за відсутності кращого слова), що логічно, беручи до уваги, що це також дуже поширений тип особистості – він складає дванадцять відсотків населення. У коледжі вони капітани групи підтримки і нападники в команді, що задають тон, завжди в центрі залу і ведуть свою команду вперед до перемоги і слави. Пізніше в житті Консули продовжують отримувати задоволення, підтримуючи власних друзів і коханих, організовуючи соціальні зібрання і роблячи все можливе, щоб упевнитися, що всі щасливі.
+ \nРекомендовані для вас професії: Вчитель початкових класів, директор дитсадка, дієтолог, косметолог, медсестра.
- "Ви - Захисник\n"
- "Тип особистості Захисник досить унікальний, оскільки багато його якостей та індивідуальних рис не можна описати. Чуйні за своєю природою, Захисники можуть бути жорстокими, коли їм потрібно захистити свою сім’ю або друзів; тихі і стримані, в той же час мають розвинені навички спілкування з людьми і надійні соціальні відносини; і хоча вони шукають безпеки і стабільності, Захисники можуть бути відкритими для нових можливостей, коли відчувають розуміння і повагу. Як і у випадку з багатьма речами, люди з типом особистості Захисники – більше, ніж просто сума їхніх частин, тому що саме спосіб, у який вони використовують свої сильні сторони, визначає, хто вони є.\n"
- "Рекомендовані для вас професії: Соціальний працівник, бухгалтер, секретар, вихователь дитсадка, помічник керівника."
+
+ Ви - Захисник
+ \nТип особистості Захисник досить унікальний, оскільки багато його якостей та індивідуальних рис не можна описати. Чуйні за своєю природою, Захисники можуть бути жорстокими, коли їм потрібно захистити свою сім’ю або друзів; тихі і стримані, в той же час мають розвинені навички спілкування з людьми і надійні соціальні відносини; і хоча вони шукають безпеки і стабільності, Захисники можуть бути відкритими для нових можливостей, коли відчувають розуміння і повагу. Як і у випадку з багатьма речами, люди з типом особистості Захисники – більше, ніж просто сума їхніх частин, тому що саме спосіб, у який вони використовують свої сильні сторони, визначає, хто вони є.
+ \nРекомендовані для вас професії: Соціальний працівник, бухгалтер, секретар, вихователь дитсадка, помічник керівника.
- "Ви - Шоумен\n"
- "Якщо хтось і може раптово почати співати чи танцювати, то це Шоумен. Шоумени живуть захопленням моменту, і хочуть, щоб і всі інші почувалися так само. Жоден інший тип особистості не віддає настільки щедро свій час і енергію, коли потрібно підбадьорити інших, і ніякий інший тип особистості не робить це настільки стильно і чарівно.\n"
- "Рекомендовані для вас професії: Директор розважального центру, співробітник відділу роботи з клієнтами, секретар приймальної, бармен."
+
+ Ви - Шоумен
+ \nЯкщо хтось і може раптово почати співати чи танцювати, то це Шоумен. Шоумени живуть захопленням моменту, і хочуть, щоб і всі інші почувалися так само. Жоден інший тип особистості не віддає настільки щедро свій час і енергію, коли потрібно підбадьорити інших, і ніякий інший тип особистості не робить це настільки стильно і чарівно.
+ \nРекомендовані для вас професії: Директор розважального центру, співробітник відділу роботи з клієнтами, секретар приймальної, бармен.
- "Ви - Авантюрист\n"
- "Авантюристи – справжні художники, але не обов’язково у звичному значенні цього слова, коли вони на вулиці малюють веселі маленькі деревця. Втім, вони цілком здатні на це. Скоріше за все це виражається в тому, що вони використовують своє почуття естетики та дизайну, і навіть можливості та рішення, щоб вийти за межі зазвичай прийнятого в суспільстві. Авантюристи обожнюють обурювати людей з їх традиційними очікуваннями, експериментуючи з красою та поведінкою – скоріше за все, вони не раз використовували фразу “Не вчіть мене жити!”.\n"
- "Рекомендовані для вас професії: Ветеринарний фельдшер, майстер з ремонту обладнання, дослідник, лікар на дому, ювелір."
+
+ Ви - Авантюрист
+ \nАвантюристи – справжні художники, але не обов\'язково у звичному значенні цього слова, коли вони на вулиці малюють веселі маленькі деревця. Втім, вони цілком здатні на це. Скоріше за все це виражається в тому, що вони використовують своє почуття естетики та дизайну, і навіть можливості та рішення, щоб вийти за межі зазвичай прийнятого в суспільстві. Авантюристи обожнюють обурювати людей з їх традиційними очікуваннями, експериментуючи з красою та поведінкою – скоріше за все, вони не раз використовували фразу “Не вчіть мене жити!”.
+ \nРекомендовані для вас професії: Ветеринарний фельдшер, майстер з ремонту обладнання, дослідник, лікар на дому, ювелір.
- "Ви - Протагоніст\n"
- "Протагоністи – природжені лідери, сповнені пристрасті й харизми. Складаючи близько двох відсотків населення, вони часто є нашими політиками, тренерами і вчителями, допомагаючи іншим і надихаючи їх досягати й творити добро у світі. З природною впевненістю, яка породжує впливовість, Протагоністи відчувають велику гордість й щастя, коли скеровують інших працювати разом для вдосконалення самих себе і навколишнього суспільства.\n"
- "Рекомендовані для вас професії: Вчитель, інструктор з сан. освіти, рекламник, міністр, управитель комерційної організації."
+
+ Ви - Протагоніст
+ \nПротагоністи – природжені лідери, сповнені пристрасті й харизми. Складаючи близько двох відсотків населення, вони часто є нашими політиками, тренерами і вчителями, допомагаючи іншим і надихаючи їх досягати й творити добро у світі. З природною впевненістю, яка породжує впливовість, Протагоністи відчувають велику гордість й щастя, коли скеровують інших працювати разом для вдосконалення самих себе і навколишнього суспільства.
+ \nРекомендовані для вас професії: Вчитель, інструктор з сан. освіти, рекламник, міністр, управитель комерційної організації.
- "Ви - Адвокат\n"
- "Тип особистості Адвокат дуже рідкісний: складає лише менше одного відсотка населення; але, тим не менш, він має свій вплив у світі. Вони мають природжене відчуття ідеалізму і моральності, але що відрізняє їх від інших ідеалістичних особистостей – це їх рішучість і цілеспрямованість: Адвокати не ідеалістичні мрійники, а люди, які здатні вживати конкретних заходів для втілення своїх цілей у реальність і робити довгостроковий позитивний вплив.\n"
- "Рекомендовані для вас професії: Шкільний психолог-консультант, письменник, дизайнер інтер\'єру, педіатр, ветеринар."
+
+ Ви - Адвокат
+ \nТип особистості Адвокат дуже рідкісний: складає лише менше одного відсотка населення; але, тим не менш, він має свій вплив у світі. Вони мають природжене відчуття ідеалізму і моральності, але що відрізняє їх від інших ідеалістичних особистостей – це їх рішучість і цілеспрямованість: Адвокати не ідеалістичні мрійники, а люди, які здатні вживати конкретних заходів для втілення своїх цілей у реальність і робити довгостроковий позитивний вплив.
+ \nРекомендовані для вас професії: Шкільний психолог-консультант, письменник, дизайнер інтер\'єру, педіатр, ветеринар.
- "Ви - Активіст\n"
- "Активіст – це справжній вільний птах. Вони часто є душею компанії, їх мало цікавлять щирі душевні хвилювання і задоволення моменту, у якому вони перебувають, – вони насолоджуються соціальними й емоційними зв’язками, які встановлюють з іншими. Чарівні, незалежні, енергійні й співчутливі – 7% населення, які вони складають, можна неодмінно відчути в будь-якому натовпі.\n"
- "Рекомендовані для вас професії: Працівник санаторію, вихователь в дошкільній установі, автор подорожніх нотаток, ланшафтний дизайнер, ресторатор."
+
+ Ви - Активіст
+ \nАктивіст – це справжній вільний птах. Вони часто є душею компанії, їх мало цікавлять щирі душевні хвилювання і задоволення моменту, у якому вони перебувають, – вони насолоджуються соціальними й емоційними зв’язками, які встановлюють з іншими. Чарівні, незалежні, енергійні й співчутливі – 7% населення, які вони складають, можна неодмінно відчути в будь-якому натовпі.
+ \nРекомендовані для вас професії: Працівник санаторію, вихователь в дошкільній установі, автор подорожніх нотаток, ланшафтний дизайнер, ресторатор.
- "Ви - Посередник\n"
- "Посередники – це справжні ідеалісти: завжди шукають хоча б натяк на хороше, навіть у найгірших людях і подіях, а також хочуть змінити все на краще. Хоча їх можуть сприймати як спокійних, стриманих чи навіть сором’язливих людей, Посередники мають внутрішнє полум’я і пристрасть, яка насправді сяє. Оскільки вони складають лише 4% населення, ризик відчути, що тебе не розуміють, на жаль, дуже високий для Посередників; але коли вони знаходять однодумців, з якими можна провести час, гармонія, яку вони відчувають, б’є фонтаном радощів і натхнення.\n"
- "Рекомендовані для вас професії: Аніматор, психолог, бібліотекар, письменник, художник."
+
+ Ви - Посередник
+ \nПосередники – це справжні ідеалісти: завжди шукають хоча б натяк на хороше, навіть у найгірших людях і подіях, а також хочуть змінити все на краще. Хоча їх можуть сприймати як спокійних, стриманих чи навіть сором’язливих людей, Посередники мають внутрішнє полум’я і пристрасть, яка насправді сяє. Оскільки вони складають лише 4% населення, ризик відчути, що тебе не розуміють, на жаль, дуже високий для Посередників; але коли вони знаходять однодумців, з якими можна провести час, гармонія, яку вони відчувають, б’є фонтаном радощів і натхнення.
+ \nРекомендовані для вас професії: Аніматор, психолог, бібліотекар, письменник, художник.
◄ На Головну
+ Про програму
+
+ Автор: Швед Андрій Дмитрович
+ \nПерша версія додатку PROFiK була представлена на конкурсі-захисті учнівських наукових робіт МАН, а розширена версія як курсова робота з предмету \"Інженерія Програмного забезпечення\".
+
\ No newline at end of file
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 13f74a4..4687e12 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -5,6 +5,8 @@
@color/colorPrimary@color/colorPrimaryDark@color/colorAccent
+ @font/roboto
+ #000000
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 224a1ac..1ce6201 100644
--- a/build.gradle
+++ b/build.gradle
@@ -2,11 +2,11 @@
buildscript {
repositories {
google()
- jcenter()
+ mavenCentral()
maven { url 'https://jitpack.io' }
}
dependencies {
- classpath 'com.android.tools.build:gradle:8.3.0'
+ classpath 'com.android.tools.build:gradle:8.4.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
@@ -16,7 +16,7 @@ buildscript {
allprojects {
repositories {
google()
- jcenter()
+ mavenCentral()
maven { url 'https://jitpack.io' }
}
}
diff --git a/gradle.properties b/gradle.properties
index f2ede47..b10ef5a 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -18,4 +18,5 @@ android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true
android.nonTransitiveRClass=false
-android.nonFinalResIds=false
\ No newline at end of file
+android.nonFinalResIds=false
+org.gradle.configuration-cache=true
\ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index e411586..17655d0 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists