[FEAT] Phase2 通行碼/取貨碼:移植 Travis 對話框外觀(沿用現有 B660/B670 邏輯)
- dialog_access_code / dialog_pickup_code_fontend 換 Travis 版面 - binding 契約相符,無需改 Java(保留現有通行碼/取貨碼邏輯) - 新增 color/transparent Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
d4fe3c6cf4
commit
696e6cb952
@ -3,239 +3,332 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/light_gray">
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/transparent">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearLayout"
|
||||
android:layout_width="0dp"
|
||||
<androidx.cardview.widget.CardView
|
||||
android:id="@+id/cardView"
|
||||
android:layout_width="540dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/light_gray"
|
||||
android:orientation="vertical"
|
||||
app:cardBackgroundColor="@color/surface"
|
||||
app:cardCornerRadius="30dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp"
|
||||
android:background="@color/error"
|
||||
android:gravity="center"
|
||||
android:text="@string/passcode"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="20sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="350dp"
|
||||
android:layout_marginBottom="1dp"
|
||||
android:background="@color/white"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textStatus"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginStart="5dp"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:text="@string/enter_passcode_or_scan_qrcode"
|
||||
android:textColor="@color/error"
|
||||
android:textSize="30sp"
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearMark1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingTop="10dp"
|
||||
android:paddingBottom="20dp"
|
||||
android:background="@color/white"
|
||||
android:orientation="vertical">
|
||||
android:orientation="vertical"
|
||||
android:paddingBottom="24dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="65dp"
|
||||
android:gravity="center"
|
||||
android:text="@string/passcode"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="36sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="150dp"
|
||||
android:gravity="center"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<EditText
|
||||
android:id="@+id/editTextNumber"
|
||||
android:layout_width="300dp"
|
||||
<TextView
|
||||
android:id="@+id/textStatus"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:textSize="20sp"
|
||||
android:hint="@string/passcode"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:inputType="number"
|
||||
android:maxLength="8"/>
|
||||
android:text="@string/enter_passcode_or_scan_qrcode"
|
||||
android:textColor="@color/primary"
|
||||
android:textSize="24sp"
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearMark1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingBottom="20dp"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="24dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<EditText
|
||||
android:id="@+id/editTextNumber"
|
||||
android:layout_width="320dp"
|
||||
android:layout_height="60dp"
|
||||
android:textSize="28sp"
|
||||
android:hint="@string/passcode"
|
||||
android:background="@color/white"
|
||||
android:textColor="@color/black"
|
||||
android:gravity="center"
|
||||
android:inputType="number"
|
||||
android:maxLength="8" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- Number pads -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button11"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="1" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button12"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="2" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button13"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="3" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button14"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="4" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button15"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="5" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button16"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="6" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button17"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="7" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button18"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="8" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button19"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="9" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonC1"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
app:cornerRadius="16dp"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="C"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button10"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="0" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonR1"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="←" />
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<GridLayout
|
||||
android:id="@+id/numberPad"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:alignmentMode="alignMargins"
|
||||
android:columnCount="3"
|
||||
android:rowCount="4"
|
||||
android:layout_gravity="center"
|
||||
android:orientation="horizontal"
|
||||
android:padding="16dp">
|
||||
|
||||
<!-- 第一排 -->
|
||||
<Button
|
||||
android:id="@+id/button11"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="1"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button12"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="2"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button13"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="3"
|
||||
android:textSize="24dp" />
|
||||
|
||||
|
||||
<!-- 第二排 -->
|
||||
<Button
|
||||
android:id="@+id/button14"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="4"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button15"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="5"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button16"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="6"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<!-- 第三排 -->
|
||||
<Button
|
||||
android:id="@+id/button17"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="7"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button18"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="8"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button19"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="9"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<!-- 第四排 -->
|
||||
<Button
|
||||
android:id="@+id/buttonC1"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/light_gray"
|
||||
android:layout_margin="8dp"
|
||||
android:text="C"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button10"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="0"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/buttonR1"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/light_gray"
|
||||
android:layout_margin="8dp"
|
||||
android:text="←"
|
||||
android:textSize="24dp" />
|
||||
|
||||
</GridLayout>
|
||||
|
||||
|
||||
<!-- 底部按鈕 -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="100dp"
|
||||
android:layout_height="80dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal" />
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonCancel"
|
||||
style="@style/Widget.Material3.Button.OutlinedButton"
|
||||
android:layout_width="160dp"
|
||||
android:layout_height="64dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
app:backgroundTint="@color/warning"
|
||||
android:text="@string/return_to_40"
|
||||
android:textSize="26sp"
|
||||
app:cornerRadius="12dp"
|
||||
android:textColor="@color/white" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonFinish"
|
||||
style="@style/Widget.Material3.Button"
|
||||
android:layout_width="160dp"
|
||||
android:layout_height="64dp"
|
||||
app:backgroundTint="@color/primary"
|
||||
app:rippleColor="#33FFFFFF"
|
||||
android:text="@string/input_complete"
|
||||
android:textSize="26sp"
|
||||
app:cornerRadius="12dp"
|
||||
android:textColor="@color/white" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<Button
|
||||
android:id="@+id/buttonCancel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:backgroundTint="@color/white"
|
||||
android:text="@string/return_to_40"
|
||||
android:textSize="20sp"
|
||||
android:textColor="@color/black" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/buttonFinish"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:backgroundTint="@color/white"
|
||||
android:text="@string/input_complete"
|
||||
android:textSize="20sp"
|
||||
android:textColor="@color/black" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
</androidx.cardview.widget.CardView>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@ -3,237 +3,333 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/light_gray">
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/transparent">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearLayout"
|
||||
android:layout_width="0dp"
|
||||
<androidx.cardview.widget.CardView
|
||||
android:id="@+id/cardView"
|
||||
android:layout_width="540dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/light_gray"
|
||||
android:orientation="vertical"
|
||||
app:cardBackgroundColor="@color/surface"
|
||||
app:cardCornerRadius="30dp"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="60dp"
|
||||
android:background="@color/error"
|
||||
android:gravity="center"
|
||||
android:text="@string/pickup_code"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="20sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="90dp"
|
||||
android:layout_marginBottom="1dp"
|
||||
android:background="@color/white"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textStatus"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_marginStart="5dp"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:text="@string/enter_pickup_code_or_scan_qrcode"
|
||||
android:textColor="@color/error"
|
||||
android:textSize="30sp"
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearMark1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingTop="10dp"
|
||||
android:paddingBottom="20dp"
|
||||
android:background="@color/white"
|
||||
android:orientation="vertical">
|
||||
android:orientation="vertical"
|
||||
android:paddingBottom="24dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/textView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="65dp"
|
||||
android:gravity="center"
|
||||
android:text="取貨碼"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="36sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="150dp"
|
||||
android:gravity="center"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<EditText
|
||||
android:id="@+id/editTextNumber"
|
||||
android:layout_width="300dp"
|
||||
<TextView
|
||||
android:id="@+id/textStatus"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:ems="10"
|
||||
android:textSize="20sp"
|
||||
android:hint="@string/pickup_code"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:inputType="number"
|
||||
android:maxLength="8" />
|
||||
android:text="請輸入取貨碼 或 掃描QRCode"
|
||||
android:textColor="@color/primary"
|
||||
android:textSize="24sp"
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/linearMark1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingBottom="20dp"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="24dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<EditText
|
||||
android:id="@+id/editTextNumber"
|
||||
android:layout_width="320dp"
|
||||
android:layout_height="60dp"
|
||||
android:textSize="28sp"
|
||||
android:hint="請輸入取貨碼"
|
||||
android:background="@color/white"
|
||||
android:textColor="@color/black"
|
||||
android:gravity="center"
|
||||
android:inputType="number"
|
||||
android:maxLength="8" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- Number pads -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button11"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="30dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="1" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button12"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="2" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button13"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="3" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button14"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="4" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button15"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="5" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button16"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="6" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button17"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="7" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button18"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
|
||||
android:text="8" />
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button19"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="9" />
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonC1"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
app:cornerRadius="16dp"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="X"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/button10"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
android:layout_marginEnd="20dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="0" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonR1"
|
||||
android:layout_width="94dp"
|
||||
android:layout_height="94dp"
|
||||
app:backgroundTint="#FFFFFF"
|
||||
app:rippleColor="#33000000"
|
||||
android:elevation="5dp"
|
||||
android:textColor="@color/black"
|
||||
android:textSize="32sp"
|
||||
app:cornerRadius="16dp"
|
||||
android:textStyle="bold"
|
||||
app:strokeColor="@color/black"
|
||||
app:strokeWidth="1.5dp"
|
||||
android:text="←" />
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<GridLayout
|
||||
android:id="@+id/numberPad"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:alignmentMode="alignMargins"
|
||||
android:columnCount="3"
|
||||
android:rowCount="4"
|
||||
android:layout_gravity="center"
|
||||
android:orientation="horizontal"
|
||||
android:padding="16dp">
|
||||
|
||||
<!-- 第一排 -->
|
||||
<Button
|
||||
android:id="@+id/button11"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="1"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button12"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="2"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button13"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="3"
|
||||
android:textSize="24dp" />
|
||||
|
||||
|
||||
<!-- 第二排 -->
|
||||
<Button
|
||||
android:id="@+id/button14"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="4"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button15"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="5"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button16"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="6"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<!-- 第三排 -->
|
||||
<Button
|
||||
android:id="@+id/button17"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="7"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button18"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="8"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button19"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="9"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<!-- 第四排 -->
|
||||
<Button
|
||||
android:id="@+id/buttonC1"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/light_gray"
|
||||
android:layout_margin="8dp"
|
||||
android:text="C"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/button10"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/black"
|
||||
android:layout_margin="8dp"
|
||||
android:text="0"
|
||||
android:textSize="24dp" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/buttonR1"
|
||||
android:layout_width="80dp"
|
||||
android:layout_height="80dp"
|
||||
android:backgroundTint="@color/light_gray"
|
||||
android:layout_margin="8dp"
|
||||
android:text="←"
|
||||
android:textSize="24dp" />
|
||||
|
||||
</GridLayout>
|
||||
<!-- 底部按鈕 -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="200dp"
|
||||
android:layout_height="80dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal" />
|
||||
android:orientation="horizontal">
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonCancel"
|
||||
style="@style/Widget.Material3.Button.OutlinedButton"
|
||||
android:layout_width="160dp"
|
||||
android:layout_height="64dp"
|
||||
android:layout_marginEnd="24dp"
|
||||
app:backgroundTint="@color/warning"
|
||||
android:text="取消"
|
||||
android:textSize="26sp"
|
||||
app:cornerRadius="12dp"
|
||||
android:textColor="@color/white" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/buttonFinish"
|
||||
style="@style/Widget.Material3.Button"
|
||||
android:layout_width="160dp"
|
||||
android:layout_height="64dp"
|
||||
app:backgroundTint="@color/primary"
|
||||
app:rippleColor="#33FFFFFF"
|
||||
android:text="輸入完成"
|
||||
android:textSize="26sp"
|
||||
app:cornerRadius="12dp"
|
||||
android:textColor="@color/white" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp"
|
||||
android:gravity="center"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<Button
|
||||
android:id="@+id/buttonCancel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:backgroundTint="@color/white"
|
||||
android:text="@string/cancel_40"
|
||||
android:textSize="20sp"
|
||||
android:textColor="@color/black" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/buttonFinish"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:backgroundTint="@color/white"
|
||||
android:text="@string/input_complete"
|
||||
android:textSize="20sp"
|
||||
android:textColor="@color/black" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
</androidx.cardview.widget.CardView>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@ -14,6 +14,7 @@
|
||||
工具色
|
||||
═══════════════════════════════════════════ -->
|
||||
<color name="transparent_black">#AA000000</color> <!-- 遮罩層 -->
|
||||
<color name="transparent">#00000000</color> <!-- 全透明 -->
|
||||
<color name="surface">#F8F9FF</color> <!-- 卡片/面板底色(Travis 支付/發票沿用) -->
|
||||
|
||||
<!-- ═══════════════════════════════════════════
|
||||
|
||||
Loading…
Reference in New Issue
Block a user