Przeglądaj źródła

添加物资使用说明详情页

Frankensteinly 9 miesięcy temu
rodzic
commit
0fe876d29d

+ 35 - 0
app/src/main/java/com/grkj/iscs_mc/view/fragment/MaterialInstructionDetailFragment.kt

@@ -0,0 +1,35 @@
+package com.grkj.iscs_mc.view.fragment
+
+import android.webkit.CookieManager
+import com.grkj.iscs_mc.databinding.FragmentMaterialInstructionDetailBinding
+import com.grkj.iscs_mc.extentions.navigateUp
+import com.grkj.iscs_mc.view.base.BaseFragment
+
+/**
+ * 物资使用说明详情页 - WebView
+ */
+class MaterialInstructionDetailFragment : BaseFragment<FragmentMaterialInstructionDetailBinding>() {
+
+    override val viewBinding: FragmentMaterialInstructionDetailBinding
+        get() = FragmentMaterialInstructionDetailBinding.inflate(layoutInflater)
+
+    override fun initView() {
+        mBinding?.cbBack?.setOnClickListener { navigateUp() }
+
+        val settings = mBinding?.wvDetail?.settings
+        settings?.javaScriptEnabled = true
+//        settings?.setAppCacheEnabled(true)   // 启用localstorage本地存储api
+        settings?.domStorageEnabled = true   // 启用dom存储(关键就是这句),貌似网上twitter显示有问题也是这个属性没有设置的原因
+        settings?.databaseEnabled = true     // 启用html5数据库功能.
+        // 默认自动播放声音是会被拦截的,只有点击触发的声音才会播放,想要自动播放的时候就需要设置
+        settings?.mediaPlaybackRequiresUserGesture = false
+
+        CookieManager.getInstance().acceptThirdPartyCookies(mBinding?.wvDetail)
+    }
+
+    override fun onDestroy() {
+        super.onDestroy()
+        mBinding?.wvDetail?.loadUrl("about:blank")
+        mBinding?.wvDetail?.destroy()
+    }
+}

+ 3 - 1
app/src/main/java/com/grkj/iscs_mc/view/fragment/MaterialInstructionFragment.kt

@@ -24,7 +24,9 @@ class MaterialInstructionFragment :
         mBinding?.rvInstruction?.adapter = object :
             CommonAdapter<String>(requireContext(), R.layout.item_rv_instruction, mutableListOf()) {
             override fun convert(holder: ViewHolder, t: String, position: Int) {
-
+                holder.setOnClickListener(R.id.root) {
+                    
+                }
             }
         }
     }

+ 31 - 0
app/src/main/res/layout/fragment_material_instruction_detail.xml

@@ -0,0 +1,31 @@
+<?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"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context=".view.fragment.MaterialInstructionDetailFragment">
+
+    <com.grkj.iscs_mc.view.widget.TitleBar
+        android:id="@+id/tb"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        app:bar_icon="@mipmap/material_instruction" />
+
+    <com.grkj.iscs_mc.view.widget.CommonBtn
+        android:id="@+id/cb_back"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_alignParentRight="true"
+        android:layout_alignParentBottom="true"
+        app:btn_bg="@drawable/common_btn_blue_bg"
+        app:btn_name="@string/back" />
+
+    <WebView
+        android:id="@+id/wv_detail"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:layout_above="@id/cb_back"
+        android:layout_below="@id/tb"
+        android:layout_marginVertical="@dimen/common_spacing" />
+</RelativeLayout>

+ 14 - 1
app/src/main/res/navigation/nav_graph.xml

@@ -50,7 +50,15 @@
     <fragment
         android:id="@+id/material_instruction_fragment"
         android:name="com.grkj.iscs_mc.view.fragment.MaterialInstructionFragment"
-        tools:layout="@layout/fragment_material_instruction" />
+        tools:layout="@layout/fragment_material_instruction">
+        <action
+            android:id="@+id/action_instruction_fragment_to_instruction_detail_fragment"
+            app:destination="@id/material_instruction_detail_fragment"
+            app:enterAnim="@anim/slide_in_right"
+            app:exitAnim="@anim/slide_out_left"
+            app:popEnterAnim="@anim/slide_in_left"
+            app:popExitAnim="@anim/slide_out_right" />
+    </fragment>
 
     <fragment
         android:id="@+id/material_inspection_fragment"
@@ -61,4 +69,9 @@
         android:id="@+id/material_replacement_fragment"
         android:name="com.grkj.iscs_mc.view.fragment.MaterialReplacementFragment"
         tools:layout="@layout/fragment_material_replacement" />
+
+    <fragment
+        android:id="@+id/material_instruction_detail_fragment"
+        android:name="com.grkj.iscs_mc.view.fragment.MaterialInstructionDetailFragment"
+        tools:layout="@layout/fragment_material_instruction_detail" />
 </navigation>