From 8fe640ef2b570c9b8850c667acfddccdf8dda1bb Mon Sep 17 00:00:00 2001 From: moreoronce Date: Sat, 5 Oct 2024 21:18:51 +0800 Subject: [PATCH] update --- .../java/com/example/lobchat/MainActivity.kt | 33 ++++++++----------- .../com/example/lobchat/WebViewActivity.kt | 19 +++++++++++ 2 files changed, 32 insertions(+), 20 deletions(-) diff --git a/app/src/main/java/com/example/lobchat/MainActivity.kt b/app/src/main/java/com/example/lobchat/MainActivity.kt index 701e0a6..99521f9 100644 --- a/app/src/main/java/com/example/lobchat/MainActivity.kt +++ b/app/src/main/java/com/example/lobchat/MainActivity.kt @@ -1,13 +1,9 @@ package com.example.lobchat -import android.app.Activity import android.content.Context import android.content.Intent -import android.net.Uri import android.os.Bundle import android.webkit.* -import androidx.activity.result.ActivityResultLauncher -import androidx.activity.result.contract.ActivityResultContracts import androidx.appcompat.app.AppCompatActivity import android.widget.Toast import android.widget.EditText @@ -16,9 +12,6 @@ import android.widget.Button class MainActivity : AppCompatActivity() { private lateinit var webView: WebView - private var filePathCallback: ValueCallback>? = null - private lateinit var fileChooserLauncher: ActivityResultLauncher - private lateinit var urlInput: EditText private lateinit var loadUrlButton: Button @@ -51,19 +44,19 @@ class MainActivity : AppCompatActivity() { webSettings.javaScriptEnabled = true webSettings.domStorageEnabled = true - // 初始化文件选择器启动器 - fileChooserLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> - if (result.resultCode == Activity.RESULT_OK && result.data != null) { - val resultUri = result.data?.data - if (filePathCallback != null) { - filePathCallback?.onReceiveValue(resultUri?.let { arrayOf(it) }) - filePathCallback = null - } - } else { - filePathCallback?.onReceiveValue(null) - filePathCallback = null - } - } +// // 初始化文件选择器启动器 +// fileChooserLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> +// if (result.resultCode == Activity.RESULT_OK && result.data != null) { +// val resultUri = result.data?.data +// if (filePathCallback != null) { +// filePathCallback?.onReceiveValue(resultUri?.let { arrayOf(it) }) +// filePathCallback = null +// } +// } else { +// filePathCallback?.onReceiveValue(null) +// filePathCallback = null +// } +// } // 点击按钮后加载用户输入的 URL loadUrlButton.setOnClickListener { diff --git a/app/src/main/java/com/example/lobchat/WebViewActivity.kt b/app/src/main/java/com/example/lobchat/WebViewActivity.kt index 6bdec34..65c2f9b 100644 --- a/app/src/main/java/com/example/lobchat/WebViewActivity.kt +++ b/app/src/main/java/com/example/lobchat/WebViewActivity.kt @@ -1,5 +1,6 @@ package com.example.lobchat +import android.app.Activity import android.content.Intent import android.net.Uri import android.os.Bundle @@ -7,6 +8,7 @@ import android.util.Log import android.webkit.* import androidx.appcompat.app.AppCompatActivity import androidx.activity.result.ActivityResultLauncher +import androidx.activity.result.contract.ActivityResultContracts import com.google.android.material.snackbar.Snackbar class WebViewActivity : AppCompatActivity() { @@ -23,6 +25,23 @@ class WebViewActivity : AppCompatActivity() { webView = findViewById(R.id.webView) setupWebView() + // 设置状态栏为透明,使系统自动使用默认的颜色 + window.statusBarColor = resources.getColor(android.R.color.transparent, theme) + + // 初始化文件选择器启动器 + fileChooserLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result -> + if (result.resultCode == Activity.RESULT_OK && result.data != null) { + val resultUri = result.data?.data + if (filePathCallback != null) { + filePathCallback?.onReceiveValue(resultUri?.let { arrayOf(it) }) + filePathCallback = null + } + } else { + filePathCallback?.onReceiveValue(null) + filePathCallback = null + } + } + // 获取传递的 URL val url = intent.getStringExtra("URL") // 确保这个 key 和 MainActivity 一致 if (!url.isNullOrEmpty()) {