Преглед изворни кода

feat 选择支付方式界面

robin пре 4 година
родитељ
комит
0015110321

+ 3 - 2
app/src/main/java/com/doverfuelingsolutions/issp/view/MainActivity.kt

@@ -47,6 +47,7 @@ class MainActivity : AppCompatActivity(),
     private val fragmentSelect = FragmentSelect()
     private val fragmentNozzle: FragmentNozzle by lazyOf(FragmentNozzle())
     private val fragmentOrderList: FragmentOrderList by lazyOf(FragmentOrderList())
+    private val fragmentPayType: FragmentPayType by lazyOf(FragmentPayType())
     private var isFragmentHoldBack = true
 
     override fun onCreate(savedInstanceState: Bundle?) {
@@ -198,12 +199,12 @@ class MainActivity : AppCompatActivity(),
         binding.clock.setOnLongClickListener(this)
 
         supportFragmentManager.setFragmentResultListener(FragmentConstants.fragmentEvent, this, this)
-        setFragment(fragmentHolder)
+        setFragment(fragmentPayType)
     }
 
     private fun initFusion() {
         FusionManager.onFusionEvent = this
-        lifecycle.addObserver(FusionManager)
+        // lifecycle.addObserver(FusionManager)
     }
 
     private fun setFragment(fragment: Fragment, back: Boolean = false) {

+ 32 - 0
app/src/main/java/com/doverfuelingsolutions/issp/view/fragment/FragmentPayType.kt

@@ -0,0 +1,32 @@
+package com.doverfuelingsolutions.issp.view.fragment
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.core.os.bundleOf
+import androidx.databinding.DataBindingUtil
+import androidx.fragment.app.setFragmentResult
+import androidx.recyclerview.widget.GridLayoutManager
+import com.doverfuelingsolutions.issp.R
+import com.doverfuelingsolutions.issp.databinding.FragmentNozzleBinding
+import com.doverfuelingsolutions.issp.databinding.FragmentPayTypeBinding
+import com.doverfuelingsolutions.issp.fusion.FusionManager
+import com.doverfuelingsolutions.issp.view.adapter.ChooseListAdapter
+import com.scwang.smart.refresh.header.ClassicsHeader
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.GlobalScope
+import kotlinx.coroutines.launch
+
+class FragmentPayType : FragmentBasic() {
+
+    private lateinit var binding: FragmentPayTypeBinding
+
+    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
+        if (!this::binding.isInitialized) {
+            binding = DataBindingUtil.inflate(inflater, R.layout.fragment_pay_type, container, false)
+            setToolBar(binding.fragmentToolbar)
+        }
+        return binding.root
+    }
+}

+ 76 - 0
app/src/main/res/layout/fragment_pay_type.xml

@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layout 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">
+
+    <data>
+
+    </data>
+
+    <androidx.constraintlayout.widget.ConstraintLayout style="@style/match">
+
+        <com.doverfuelingsolutions.issp.view.widget.FragmentToolbar
+            android:id="@+id/fragmentToolbar"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            app:countdownTime="60"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent"
+            app:title="@string/select_pay_type" />
+
+        <androidx.appcompat.widget.LinearLayoutCompat
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent"
+            android:orientation="horizontal"
+            android:gravity="center_horizontal"
+            style="@style/wrap">
+
+            <androidx.appcompat.widget.LinearLayoutCompat
+                style="@style/wrap"
+                android:orientation="vertical"
+                android:gravity="center_horizontal">
+
+                <androidx.appcompat.widget.AppCompatImageView
+                    android:id="@+id/payTypeScan"
+                    android:src="@mipmap/ic_qr_pay"
+                    android:layout_width="360dp"
+                    android:layout_height="360dp"/>
+
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:text="@string/pay_by_qr"
+                    android:textColor="@color/black"
+                    android:textSize="48sp"
+                    android:layout_marginTop="40dp"
+                    style="@style/wrap"/>
+            </androidx.appcompat.widget.LinearLayoutCompat>
+
+            <androidx.appcompat.widget.LinearLayoutCompat
+                android:layout_marginStart="120dp"
+                app:layout_constraintStart_toStartOf="parent"
+                app:layout_constraintEnd_toEndOf="parent"
+                app:layout_constraintTop_toTopOf="parent"
+                app:layout_constraintBottom_toBottomOf="parent"
+                style="@style/wrap"
+                android:orientation="vertical"
+                android:gravity="center_horizontal">
+
+                <androidx.appcompat.widget.AppCompatImageView
+                    android:id="@+id/payTypeFace"
+                    android:src="@mipmap/ic_face_pay"
+                    android:layout_width="360dp"
+                    android:layout_height="360dp"/>
+
+                <androidx.appcompat.widget.AppCompatTextView
+                    android:text="@string/pay_by_ali_face"
+                    android:textColor="@color/black"
+                    android:textSize="48sp"
+                    android:layout_marginTop="40dp"
+                    style="@style/wrap"/>
+            </androidx.appcompat.widget.LinearLayoutCompat>
+        </androidx.appcompat.widget.LinearLayoutCompat>
+    </androidx.constraintlayout.widget.ConstraintLayout>
+</layout>

BIN
app/src/main/res/mipmap-mdpi/ic_face_pay.png


BIN
app/src/main/res/mipmap-mdpi/ic_qr_pay.png


+ 3 - 0
app/src/main/res/values/strings.xml

@@ -74,6 +74,9 @@
 
     <string name="query_by_nozzle">请选择枪号查询</string>
     <string name="select_pay_order">请选择支付加油订单</string>
+    <string name="select_pay_type">请选择支付方式</string>
+    <string name="pay_by_qr">扫码二维码支付</string>
+    <string name="pay_by_ali_face">支付宝刷脸支付</string>
     <string name="fail_get_order">获取订单失败</string>
     <string name="fail_get_order_detail">获取订单详情失败</string>
     <string name="nozzle_name">%1$s号枪</string>