251 lines
14 KiB
XML
251 lines
14 KiB
XML
<?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="match_parent"
|
|
android:orientation="vertical"
|
|
android:background="?attr/colorSurface">
|
|
|
|
<ScrollView
|
|
android:id="@+id/receiptContainer"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="0dp"
|
|
android:layout_weight="1"
|
|
android:overScrollMode="never"
|
|
android:scrollbars="none">
|
|
|
|
<!-- Renderable receipt card -->
|
|
<LinearLayout
|
|
android:id="@+id/receiptCard"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginHorizontal="40dp"
|
|
android:orientation="vertical">
|
|
|
|
<!-- Green header — from/to avatars and names -->
|
|
<FrameLayout
|
|
android:id="@+id/receiptHeader"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="160dp"
|
|
android:background="@drawable/mib_receipt_header_bg">
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="center"
|
|
android:orientation="horizontal"
|
|
android:gravity="center"
|
|
android:paddingHorizontal="24dp">
|
|
|
|
<LinearLayout
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:gravity="center">
|
|
|
|
<!-- Plain ImageView: bitmaps are circle-cropped in code (ShapeableImageView's
|
|
hardware-layer mask doesn't render on the scaled card or in captures) -->
|
|
<ImageView
|
|
android:id="@+id/ivFromAvatar"
|
|
android:layout_width="52dp"
|
|
android:layout_height="52dp"
|
|
android:scaleType="fitCenter"
|
|
android:contentDescription="@null" />
|
|
|
|
<TextView
|
|
android:id="@+id/tvFromLabel"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginTop="6dp"
|
|
android:textSize="12sp"
|
|
android:maxWidth="110dp"
|
|
android:textStyle="bold"
|
|
android:textColor="#FFFFFF"
|
|
android:gravity="center"
|
|
android:maxLines="2" />
|
|
|
|
</LinearLayout>
|
|
|
|
<ImageView
|
|
android:layout_width="24dp"
|
|
android:layout_height="24dp"
|
|
android:layout_marginHorizontal="10dp"
|
|
android:src="@drawable/ic_arrow_right"
|
|
android:tint="#FFFFFF"
|
|
android:contentDescription="@null" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:gravity="center">
|
|
|
|
<!-- Plain ImageView: bitmaps are circle-cropped in code (ShapeableImageView's
|
|
hardware-layer mask doesn't render on the scaled card or in captures) -->
|
|
<ImageView
|
|
android:id="@+id/ivToAvatar"
|
|
android:layout_width="52dp"
|
|
android:layout_height="52dp"
|
|
android:scaleType="fitCenter"
|
|
android:contentDescription="@null" />
|
|
|
|
<TextView
|
|
android:id="@+id/tvToLabel"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginTop="6dp"
|
|
android:textSize="12sp"
|
|
android:maxWidth="110dp"
|
|
android:textStyle="bold"
|
|
android:textColor="#FFFFFF"
|
|
android:gravity="center"
|
|
android:maxLines="2" />
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|
|
|
|
</FrameLayout>
|
|
|
|
<!-- Body -->
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:background="@color/mib_receipt_bg">
|
|
|
|
<TextView
|
|
android:id="@+id/tvAmount"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:textSize="24sp"
|
|
android:textStyle="bold"
|
|
android:textColor="@color/mib_receipt_amount"
|
|
android:gravity="center"
|
|
android:paddingTop="14dp" />
|
|
|
|
<TextView
|
|
android:id="@+id/tvStatus"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:text="Success"
|
|
android:textSize="14sp"
|
|
android:textStyle="bold"
|
|
android:textColor="@color/mib_receipt_amount"
|
|
android:gravity="center"
|
|
android:paddingBottom="6dp" />
|
|
|
|
<!-- Transaction # -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="Transaction#" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvReferenceNo" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@color/mib_receipt_divider" android:layout_marginHorizontal="20dp" />
|
|
|
|
<!-- From (sender profile name) -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="From" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvFromName" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@color/mib_receipt_divider" android:layout_marginHorizontal="20dp" />
|
|
|
|
<!-- To Account (recipient name + account number) -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="To Account" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvToAccount" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@color/mib_receipt_divider" android:layout_marginHorizontal="20dp" />
|
|
|
|
<!-- Bank -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="Bank" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvToBank" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@color/mib_receipt_divider" android:layout_marginHorizontal="20dp" />
|
|
|
|
<!-- Transaction Type -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="Transaction Type" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvTransactionType" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@color/mib_receipt_divider" android:layout_marginHorizontal="20dp" />
|
|
|
|
<!-- Transaction Date -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="Transaction Date" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvTransactionDate" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@color/mib_receipt_divider" android:layout_marginHorizontal="20dp" />
|
|
|
|
<!-- Processed Date -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="Processed Date" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvValueDate" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
<View android:layout_width="match_parent" android:layout_height="1dp" android:background="@color/mib_receipt_divider" android:layout_marginHorizontal="20dp" />
|
|
|
|
<!-- Remarks -->
|
|
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:paddingHorizontal="20dp" android:paddingVertical="11dp">
|
|
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginEnd="16dp" android:text="Remarks" android:textSize="15sp" android:textColor="@color/mib_receipt_label" />
|
|
<TextView android:id="@+id/tvPurpose" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="end" android:textSize="15sp" android:textColor="@color/mib_receipt_value" />
|
|
</LinearLayout>
|
|
|
|
<!-- MIB footer -->
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal"
|
|
android:gravity="center"
|
|
android:paddingVertical="12dp">
|
|
|
|
<ImageView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="22dp"
|
|
android:src="@drawable/mib_logo_full"
|
|
android:adjustViewBounds="true"
|
|
android:contentDescription="Maldives Islamic Bank" />
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|
|
|
|
</ScrollView>
|
|
|
|
<!-- Action buttons — outside renderable area -->
|
|
<LinearLayout
|
|
android:id="@+id/btnRow"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal"
|
|
android:background="?attr/colorSurface"
|
|
android:paddingHorizontal="12dp"
|
|
android:paddingTop="8dp"
|
|
android:paddingBottom="12dp">
|
|
|
|
<com.google.android.material.button.MaterialButton
|
|
android:id="@+id/btnShare"
|
|
style="@style/Widget.Material3.Button.OutlinedButton"
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="1"
|
|
android:layout_marginEnd="4dp"
|
|
android:text="Share"
|
|
app:icon="@drawable/ic_share" />
|
|
|
|
<com.google.android.material.button.MaterialButton
|
|
android:id="@+id/btnSave"
|
|
style="@style/Widget.Material3.Button.OutlinedButton"
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="1"
|
|
android:layout_marginStart="4dp"
|
|
android:text="Save"
|
|
app:icon="@drawable/ic_save" />
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|