From ffe3eb152789d67f6db2c417bfe0a23d4a96429b Mon Sep 17 00:00:00 2001
From: 230415 <230415@epvc.pt>
Date: Mon, 27 Apr 2026 15:03:58 +0100
Subject: [PATCH] =?UTF-8?q?defini=C3=A7=C3=B5es?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/AndroidManifest.xml | 3 +
.../example/lifegrid/DefinicoesActivity.java | 73 +++++
.../example/lifegrid/TelaInicialActivity.java | 7 +-
.../main/res/layout/activity_definicoes.xml | 253 ++++++++++++++++++
app/src/main/res/values/strings.xml | 6 +
5 files changed, 338 insertions(+), 4 deletions(-)
create mode 100644 app/src/main/java/com/example/lifegrid/DefinicoesActivity.java
create mode 100644 app/src/main/res/layout/activity_definicoes.xml
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5a2581e..f09a15c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -13,6 +13,9 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.LifeGrid">
+
diff --git a/app/src/main/java/com/example/lifegrid/DefinicoesActivity.java b/app/src/main/java/com/example/lifegrid/DefinicoesActivity.java
new file mode 100644
index 0000000..1651192
--- /dev/null
+++ b/app/src/main/java/com/example/lifegrid/DefinicoesActivity.java
@@ -0,0 +1,73 @@
+package com.example.lifegrid;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.ImageView;
+import android.widget.Spinner;
+import android.widget.Switch;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import androidx.activity.EdgeToEdge;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.core.graphics.Insets;
+import androidx.core.view.ViewCompat;
+import androidx.core.view.WindowInsetsCompat;
+
+import com.google.firebase.auth.FirebaseAuth;
+import com.google.firebase.auth.FirebaseUser;
+
+public class DefinicoesActivity extends AppCompatActivity {
+
+ private ImageView btnBack;
+ private TextView tvLogout;
+ private Button btnSaveSettings;
+ private EditText etUsername;
+ private Switch switchNotifications;
+ private Spinner spinnerCurrency;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ EdgeToEdge.enable(this);
+ setContentView(R.layout.activity_definicoes);
+ ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
+ Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
+ v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
+ return insets;
+ });
+
+ btnBack = findViewById(R.id.btnBack);
+ tvLogout = findViewById(R.id.tvLogout);
+ btnSaveSettings = findViewById(R.id.btnSaveSettings);
+ etUsername = findViewById(R.id.etUsername);
+ switchNotifications = findViewById(R.id.switchNotifications);
+ spinnerCurrency = findViewById(R.id.spinnerCurrency);
+
+ FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
+ if (user != null && user.getDisplayName() != null && !user.getDisplayName().isEmpty()) {
+ etUsername.setText(user.getDisplayName());
+ }
+
+ btnBack.setOnClickListener(v -> {
+ finish();
+ });
+
+ tvLogout.setOnClickListener(v -> {
+ FirebaseAuth.getInstance().signOut();
+ Intent intent = new Intent(DefinicoesActivity.this, LoginActivity.class);
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
+ startActivity(intent);
+ finish();
+ });
+
+ btnSaveSettings.setOnClickListener(v -> {
+ // Em implementações futuras isto iria guardar a foto, username (Firebase UserProfileChangeRequest)
+ // Notificações e moeda escolhida no Firebase Realtime Database
+ Toast.makeText(this, "Definições guardadas com sucesso!", Toast.LENGTH_SHORT).show();
+ finish();
+ });
+ }
+}
diff --git a/app/src/main/java/com/example/lifegrid/TelaInicialActivity.java b/app/src/main/java/com/example/lifegrid/TelaInicialActivity.java
index 175fe91..fe8d1c7 100644
--- a/app/src/main/java/com/example/lifegrid/TelaInicialActivity.java
+++ b/app/src/main/java/com/example/lifegrid/TelaInicialActivity.java
@@ -1,6 +1,7 @@
package com.example.lifegrid;
import android.os.Bundle;
+import android.content.Intent;
import android.widget.ImageView;
import android.widget.TextView;
@@ -129,10 +130,8 @@ public class TelaInicialActivity extends AppCompatActivity {
});
ImageView definicoesImageView = findViewById(R.id.definicoesImageView);
definicoesImageView.setOnClickListener(v -> {
- Fragment definicoesFragment = new DefinicoesFragment();
- getSupportFragmentManager().beginTransaction()
- .replace(R.id.fragmentContainerView, definicoesFragment)
- .commit();
+ Intent intent = new Intent(TelaInicialActivity.this, DefinicoesActivity.class);
+ startActivity(intent);
});
}
diff --git a/app/src/main/res/layout/activity_definicoes.xml b/app/src/main/res/layout/activity_definicoes.xml
new file mode 100644
index 0000000..40c9bcb
--- /dev/null
+++ b/app/src/main/res/layout/activity_definicoes.xml
@@ -0,0 +1,253 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 9b0b662..c930fd4 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -37,4 +37,10 @@
- Imóveis
- Criptomoedas
+
+
+ - EUR (€)
+ - USD ($)
+ - BRL (R$)
+
\ No newline at end of file