Files
cuidamais_med/app/src/main/res/layout/activity_main.xml

476 lines
21 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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="match_parent"
android:background="@color/background_color">
<LinearLayout
android:id="@+id/lay_top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:paddingTop="56dp"
android:paddingBottom="40dp"
android:paddingHorizontal="28dp"
android:background="@drawable/bg_gradient_header"
android:elevation="12dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_greeting_main"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:text="Olá"
android:textSize="32sp"
android:fontFamily="sans-serif-black"
android:textColor="@color/white"/>
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/img_perfil_header"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:src="@drawable/ic_user"
android:padding="2dp"
android:scaleType="centerCrop"
android:background="?attr/colorSurface"
app:shapeAppearanceOverlay="@style/CircleImageView" />
</RelativeLayout>
</LinearLayout>
<FrameLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/lay_top"
android:layout_above="@id/bottom_navigation">
<!-- AGENDA VIEW -->
<LinearLayout
android:id="@+id/view_agenda"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingHorizontal="24dp">
<com.google.android.material.card.MaterialCardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginBottom="16dp"
app:cardCornerRadius="24dp"
app:cardElevation="0dp"
app:strokeWidth="1dp"
app:strokeColor="@color/stroke_color">
<CalendarView
android:id="@+id/calendarView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/Widget.CalendarView.Custom"
style="@style/Widget.CalendarView.Custom"
android:background="?attr/colorSurface" />
</com.google.android.material.card.MaterialCardView>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_agenda"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:paddingBottom="80dp" />
<TextView
android:id="@+id/text_agenda_vazia"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Não tens consultas agendadas para este dia."
android:gravity="center"
android:visibility="gone"
android:textSize="16sp"
android:textColor="@color/text_secondary"
android:paddingBottom="40dp"/>
</FrameLayout>
</LinearLayout>
<!-- PACIENTES VIEW -->
<LinearLayout
android:id="@+id/view_pacientes"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:visibility="gone">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Nomes dos Pacientes"
android:textStyle="bold"
android:textSize="26sp"
android:fontFamily="sans-serif-black"
android:paddingTop="24dp"
android:paddingBottom="8dp"
android:paddingHorizontal="24dp"
android:textColor="@color/text_primary"/>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/search_layout_pacientes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="24dp"
android:layout_marginBottom="16dp"
app:hintEnabled="false"
app:startIconDrawable="@drawable/ic_nav_pacientes"
app:startIconTint="?attr/colorPrimary"
app:boxCornerRadiusTopStart="16dp"
app:boxCornerRadiusTopEnd="16dp"
app:boxCornerRadiusBottomStart="16dp"
app:boxCornerRadiusBottomEnd="16dp"
app:boxStrokeWidth="0dp"
app:boxStrokeWidthFocused="0dp"
app:boxBackgroundColor="@color/search_bar_background">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/edit_search_pacientes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Pesquisar por nome..."
android:inputType="text"
android:paddingVertical="12dp"
android:textSize="16sp"/>
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:id="@+id/text_empty_state"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:text="Nenhuma consulta marcada."
android:gravity="center"
android:visibility="gone"
android:textSize="18sp"
android:textColor="#9E9E9E" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_consultas"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:clipToPadding="false"
android:paddingTop="8dp"
android:paddingBottom="16dp" />
</LinearLayout>
<!-- ACEITES VIEW (CONSULTAS) -->
<LinearLayout
android:id="@+id/view_aceites"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingHorizontal="24dp"
android:visibility="gone">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Histórico de Consultas"
android:textStyle="bold"
android:textSize="26sp"
android:fontFamily="sans-serif-black"
android:paddingVertical="24dp"
android:textColor="@color/text_primary"/>
<com.google.android.material.card.MaterialCardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
app:cardCornerRadius="24dp"
app:cardElevation="2dp"
app:strokeWidth="0dp"
app:cardBackgroundColor="?attr/colorSurface">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="12dp"
android:gravity="center_vertical">
<ImageButton
android:id="@+id/btn_prev_day_hist"
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_arrow_back"
android:background="?attr/selectableItemBackgroundBorderless"
app:tint="?attr/colorPrimary" />
<LinearLayout
android:id="@+id/btn_select_date_hist"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:background="?attr/selectableItemBackground"
android:padding="8dp">
<TextView
android:id="@+id/text_agenda_info_hist"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Selecionar Dia"
android:textStyle="bold"
android:textSize="18sp"
android:textColor="?attr/colorPrimary"/>
<TextView
android:id="@+id/text_selected_date_full_hist"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Data Selecionada"
android:textSize="14sp"
android:textColor="@color/text_secondary"/>
</LinearLayout>
<ImageButton
android:id="@+id/btn_next_day_hist"
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_arrow_back"
android:rotation="180"
android:background="?attr/selectableItemBackgroundBorderless"
app:tint="?attr/colorPrimary" />
<ImageButton
android:id="@+id/btn_go_today_icon_hist"
android:layout_width="48dp"
android:layout_height="48dp"
android:src="@drawable/ic_nav_inicio"
android:background="?attr/selectableItemBackgroundBorderless"
app:tint="?attr/colorPrimary"
android:visibility="gone"/>
</LinearLayout>
</com.google.android.material.card.MaterialCardView>
<TextView
android:id="@+id/text_aceites_empty"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Nenhuma consulta encontrada para este dia."
android:gravity="center"
android:visibility="gone"
android:textSize="18sp"
android:textColor="@color/text_secondary"
android:paddingVertical="32dp"/>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_aceites"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:paddingBottom="80dp" />
</LinearLayout>
<!-- PERFIL VIEW -->
<LinearLayout
android:id="@+id/view_perfil"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingHorizontal="32dp"
android:paddingVertical="24dp"
android:gravity="center"
android:background="@color/background_color"
android:visibility="gone">
<com.google.android.material.imageview.ShapeableImageView
android:id="@+id/img_perfil_main"
android:layout_width="120dp"
android:layout_height="120dp"
android:src="@drawable/ic_user"
android:layout_marginBottom="24dp"
android:scaleType="centerCrop"
app:shapeAppearanceOverlay="@style/CircleImageView"
android:padding="2dp"/>
<com.google.android.material.card.MaterialCardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="32dp"
app:cardElevation="0dp"
app:strokeWidth="1dp"
app:strokeColor="@color/stroke_color"
app:cardCornerRadius="24dp"
app:cardBackgroundColor="?attr/colorSurface">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="32dp"
android:paddingBottom="32dp"
android:paddingHorizontal="24dp"
android:gravity="center_horizontal">
<TextView
android:id="@+id/tv_nome_medico"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nome do Utilizador"
android:textSize="22sp"
android:fontFamily="sans-serif-black"
android:textColor="@color/text_primary"
android:layout_marginBottom="4dp"/>
<TextView
android:id="@+id/tv_email_medico"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="email@exemplo.com"
android:textColor="@color/text_secondary"
android:textSize="16sp"
android:layout_marginBottom="24dp"/>
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/search_bar_background"
android:layout_marginBottom="24dp"
android:layout_marginHorizontal="16dp"/>
<TextView
android:id="@+id/tv_especialidade"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Especialidade: --"
android:textColor="@color/text_primary"
android:textSize="16sp"
android:layout_marginBottom="8dp"/>
<TextView
android:id="@+id/tv_cedula"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Género: --"
android:textColor="@color/text_primary"
android:textSize="16sp"
android:layout_marginBottom="8dp"/>
<TextView
android:id="@+id/tv_horario_perfil"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Horário: --"
android:textColor="@color/text_primary"
android:textSize="16sp"/>
</LinearLayout>
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.card.MaterialCardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="24dp"
app:cardElevation="0dp"
app:strokeWidth="1dp"
app:strokeColor="@color/stroke_color"
app:cardCornerRadius="20dp"
app:cardBackgroundColor="?attr/colorSurface">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="20dp"
android:paddingEnd="20dp"
android:paddingTop="16dp"
android:paddingBottom="16dp">
<ImageView
android:id="@+id/ic_dark_mode"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_centerVertical="true"
android:src="@drawable/ic_dark_mode"
app:tint="?attr/colorPrimary" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toEndOf="@id/ic_dark_mode"
android:layout_marginStart="16dp"
android:layout_centerVertical="true"
android:text="Modo Escuro"
android:textSize="16sp"
android:fontFamily="sans-serif-medium"
android:textColor="@color/text_primary"/>
<androidx.appcompat.widget.SwitchCompat
android:id="@+id/switch_dark_mode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true" />
</RelativeLayout>
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_editar_dados"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="EDITAR DADOS"
android:textSize="15sp"
android:textStyle="bold"
app:cornerRadius="30dp"
app:backgroundTint="?attr/colorPrimary"
android:textColor="@color/white"
android:layout_marginBottom="16dp"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_logout"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="TERMINAR SESSÃO"
android:textSize="15sp"
android:textStyle="bold"
app:cornerRadius="30dp"
app:strokeColor="@color/error_color"
app:strokeWidth="1.5dp"
app:backgroundTint="@color/background_color"
android:textColor="@color/error_color"/>
</LinearLayout>
</FrameLayout>
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/fab_add_consulta"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_marginEnd="24dp"
android:layout_marginBottom="80dp"
android:src="@drawable/ic_calendar"
app:tint="@color/white"
app:backgroundTint="@color/primary_color"
app:elevation="6dp" />
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="?android:attr/windowBackground"
app:menu="@menu/menu_bottom"
app:labelVisibilityMode="labeled" />
</RelativeLayout>