Files
ShiftRing/app/src/main/res/layout/item_day.xml
T

113 lines
4.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/dayRoot"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_grid_cell_v4">
<!-- Top Row: Day Number & Small Shift Badge (shown when memo exists) -->
<LinearLayout
android:id="@+id/topBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
android:layout_marginStart="4dp"
android:layout_marginTop="2dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:id="@+id/dayNumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="12"
android:textColor="@color/text_primary"
android:textSize="13sp"
android:textStyle="bold" />
<!-- Small Shift Badge next to Day Number (shown when day has memo) -->
<TextView
android:id="@+id/tvShiftSmall"
android:layout_width="18dp"
android:layout_height="18dp"
android:layout_marginStart="3dp"
android:gravity="center"
android:includeFontPadding="false"
android:text="주"
android:textSize="9.5sp"
android:textStyle="bold"
android:textColor="@color/text_primary"
android:visibility="gone"/>
</LinearLayout>
<!-- Tide Text (top-right) -->
<TextView
android:id="@+id/tvTide"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="4dp"
android:layout_marginTop="2dp"
android:text="08:20"
android:textColor="@color/text_tertiary"
android:textSize="9sp"
android:visibility="visible"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!-- Standard Shift Abbreviation Circular Indicator (Center - shown when NO memo) -->
<TextView
android:id="@+id/shiftChar"
android:layout_width="48dp"
android:layout_height="48dp"
android:gravity="center"
android:text="주"
android:textSize="20sp"
android:textStyle="bold"
android:textColor="@color/text_primary"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintVertical_bias="0.45"/>
<!-- Memo Content Text (Center/Body) - Up to 4 lines when memo exists -->
<TextView
android:id="@+id/memoContent"
android:layout_width="0dp"
android:layout_height="0dp"
android:gravity="center"
android:text="메모내용\n2줄\n3줄\n4줄"
android:textSize="9.5sp"
android:textStyle="bold"
android:textColor="@color/text_primary"
android:lineSpacingMultiplier="1.05"
android:maxLines="4"
android:ellipsize="end"
android:visibility="gone"
android:layout_marginHorizontal="2dp"
android:layout_marginTop="1dp"
android:layout_marginBottom="1dp"
app:layout_constraintTop_toBottomOf="@id/topBar"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"/>
<!-- Holiday Name Small (Bottom) -->
<TextView
android:id="@+id/holidayNameSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="설날"
android:textSize="9sp"
android:textColor="@color/shift_red"
android:layout_marginBottom="1dp"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>