Atualizado

This commit is contained in:
2026-03-10 16:03:56 +00:00
parent 534a344b28
commit e8f64562d8
14 changed files with 336 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
package com.example.bem;
import com.google.gson.annotations.SerializedName;
public class WeatherResponse {
@SerializedName("current_weather")
public CurrentWeather currentWeather;
public static class CurrentWeather {
@SerializedName("temperature")
public double temperature;
@SerializedName("weathercode")
public int weatherCode;
@SerializedName("time")
public String time;
}
}

View File

@@ -0,0 +1,12 @@
package com.example.bem;
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.Query;
public interface WeatherService {
@GET("v1/forecast?current_weather=true")
Call<WeatherResponse> getCurrentWeather(
@Query("latitude") double latitude,
@Query("longitude") double longitude);
}

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#E3F2FD" />
<corners android:radius="8dp" />
<stroke
android:width="1dp"
android:color="#90CAF9" />
</shape>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#F0F0F0" />
<stroke
android:width="1dp"
android:color="#E0E0E0" />
</shape>

View File

@@ -0,0 +1,13 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="0"
android:endColor="@color/guardian_purple_end"
android:startColor="@color/guardian_purple_start" />
<corners android:radius="24dp" />
</shape>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="45"
android:startColor="@color/login_bg_start"
android:endColor="@color/login_bg_end"
android:type="linear" />
</shape>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@android:color/white" />
<corners android:radius="12dp" />
<stroke
android:width="1dp"
android:color="#E0E0E0" />
</shape>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@color/accent" />
<size
android:width="4dp"
android:height="40dp" />
<corners android:radius="10dp"/>
</shape>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="5dp" />
<solid android:color="#55FFFFFF" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape>
<corners android:radius="5dp" />
<solid android:color="#FFFFFF" />
</shape>
</clip>
</item>
</layer-list>

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 KiB

View File

@@ -0,0 +1,178 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="vertical"
android:padding="24dp">
<!-- Header / Avatar Area -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical"
android:layout_marginBottom="24dp">
<ImageView
android:id="@+id/imgProfileAvatar"
android:layout_width="80dp"
android:layout_height="80dp"
android:background="@drawable/bg_circle_avatar"
android:backgroundTint="@color/theme_blue_bg"
android:padding="12dp"
android:src="@drawable/logo_bem"
app:tint="@color/theme_blue_primary" />
<TextView
android:id="@+id/textProfileName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="Utilizador"
android:textColor="@color/theme_black_primary"
android:textSize="22sp"
android:fontFamily="sans-serif-medium" />
<TextView
android:id="@+id/textProfileEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:text="email@exemplo.com"
android:textColor="@color/neutral_medium"
android:textSize="14sp" />
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/divider"
android:layout_marginBottom="24dp" />
<!-- Action Buttons -->
<LinearLayout
android:id="@+id/btnProfileTheme"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingVertical="12dp">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@android:drawable/ic_menu_compass"
app:tint="@color/theme_blue_primary" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_weight="1"
android:text="Mudar Tema"
android:textColor="@color/theme_black_primary"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/btnProfileSupport"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingVertical="12dp">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@android:drawable/ic_menu_help"
app:tint="@color/theme_blue_primary" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_weight="1"
android:text="Suporte"
android:textColor="@color/theme_black_primary"
android:textSize="16sp" />
</LinearLayout>
<!-- Exit Guardian Mode Button -->
<LinearLayout
android:id="@+id/btnProfileExitGuardian"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingVertical="12dp"
android:visibility="gone">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@android:drawable/ic_menu_revert"
app:tint="@color/guardian_purple_start" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_weight="1"
android:text="Sair do Modo Responsável"
android:textColor="@color/guardian_purple_start"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/btnProfileLogout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingVertical="12dp">
<ImageView
android:layout_width="24dp"
android:layout_height="24dp"
android:src="@android:drawable/ic_lock_power_off"
app:tint="@color/delete" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_weight="1"
android:text="Sair da Conta"
android:textColor="@color/delete"
android:textSize="16sp"
android:textStyle="bold" />
</LinearLayout>
<Button
android:id="@+id/btnProfileClose"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:backgroundTint="@color/theme_blue_bg"
android:text="Fechar"
android:textColor="@color/theme_blue_primary"
android:textAllCaps="false"
style="@style/Widget.Material3.Button" />
</LinearLayout>

View File

@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:background="@drawable/bg_new_input"
android:gravity="center_vertical"
android:orientation="horizontal"
android:padding="12dp">
<ImageView
android:id="@+id/imageViewAvatar"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/bg_avatar"
android:padding="8dp"
android:src="@drawable/logo_bem" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:id="@+id/textSavedName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nome do Utilizador"
android:textColor="@color/neutral_dark"
android:textStyle="bold" />
<TextView
android:id="@+id/textSavedEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="email@exemplo.com"
android:textColor="@color/neutral_medium"
android:textSize="12sp" />
</LinearLayout>
<ImageView
android:id="@+id/btnRemoveAccount"
android:layout_width="24dp"
android:layout_height="24dp"
android:padding="4dp"
android:src="@android:drawable/ic_menu_close_clear_cancel"
android:tint="@color/neutral_medium" />
</LinearLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 754 KiB