From 40a0eea463cc83a0146d7ac404a4475984dcbb18 Mon Sep 17 00:00:00 2001 From: YangYuhao Date: Fri, 18 Aug 2023 18:10:04 +0800 Subject: [PATCH] =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E9=80=9A=E7=9F=A5=E8=B7=B3?= =?UTF-8?q?=E8=BD=AC=20android=20=E5=90=84=E7=A7=8D=E5=8D=8F=E8=AE=AE=20?= =?UTF-8?q?=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lib/app/msg/sys_notify_list/view.dart | 37 +++++++++++++++++-- circle_app/lib/app/webview/logic.dart | 2 +- circle_app/lib/app/webview/view.dart | 19 +++++++++- circle_app/lib/util/util.dart | 34 ++++++++--------- 4 files changed, 68 insertions(+), 24 deletions(-) diff --git a/circle_app/lib/app/msg/sys_notify_list/view.dart b/circle_app/lib/app/msg/sys_notify_list/view.dart index ee528ee..ce614f4 100644 --- a/circle_app/lib/app/msg/sys_notify_list/view.dart +++ b/circle_app/lib/app/msg/sys_notify_list/view.dart @@ -10,6 +10,7 @@ import 'package:get/get.dart'; import 'package:pull_to_refresh/pull_to_refresh.dart'; import 'package:tencent_cloud_chat_uikit/tencent_cloud_chat_uikit.dart'; +import '../../home/logic.dart'; import 'logic.dart'; class Sys_notify_listPage extends StatelessWidget { @@ -102,9 +103,39 @@ class Sys_notify_listPage extends StatelessWidget { } widgets.add(GestureDetector( - onTap: () { - Get.toNamed(AppRoutes.WebViewActivity, - arguments: jsonDecode(data.note!)); + onTap: () async{ + switch(data.scene){ + case 'url': + Map bean = json.decode(data.note!); + String url = bean['url']; + + + Get.toNamed(AppRoutes.WebViewActivity, arguments: { + 'title': "", + "url": url + }); + // Get.toNamed(AppRoutes.WebViewActivity, + // arguments: {"url":jsonDecode(url)} ); + break; + case "my_main": + final homeLogic = Get.put(HomeLogic()); + homeLogic.pageController.jumpToPage(2); + homeLogic.updateIndex(2); + + Get.back(); + + break; + case "user_home": + Get.toNamed(AppRoutes.UserInfoActivity); + break; + case "none": + break; + + + } + + + }, child: Container( margin: EdgeInsets.only(bottom: 8.sp, left: 16.sp), diff --git a/circle_app/lib/app/webview/logic.dart b/circle_app/lib/app/webview/logic.dart index d906a68..8e8ead0 100644 --- a/circle_app/lib/app/webview/logic.dart +++ b/circle_app/lib/app/webview/logic.dart @@ -5,6 +5,6 @@ import 'state.dart'; class WebviewLogic extends GetxController { final WebviewState state = WebviewState(); - final title = Get.arguments['title'] ?? ''; + var title = Get.arguments['title'] ?? ''; } diff --git a/circle_app/lib/app/webview/view.dart b/circle_app/lib/app/webview/view.dart index f43a67e..0d41b51 100644 --- a/circle_app/lib/app/webview/view.dart +++ b/circle_app/lib/app/webview/view.dart @@ -15,11 +15,14 @@ class _WebViewContainerState extends State { // Get.toNamed(AppRoutes.WebViewActivity,arguments: {'title':"百度","url":"https://www.baidu.com"}); _WebViewContainerState(); + var controller; + final logic = Get.find(); @override Widget build(BuildContext context) { final url = Get.arguments['url']; - var controller = WebViewController() + + controller = WebViewController() ..setJavaScriptMode(JavaScriptMode.unrestricted) ..setBackgroundColor(Colors.white) ..setNavigationDelegate( @@ -28,7 +31,19 @@ class _WebViewContainerState extends State { // Update loading bar. }, onPageStarted: (String url) {}, - onPageFinished: (String url) {}, + onPageFinished: (String url) async { + if(logic.title==''){ + String title = await controller.getTitle(); // 获取网页标题 + if (title.length > 8) { + title = title.substring(0, 8) + '...'; + } + logic.title = title; + logic.update(); + print('Page title: $title'); // 打印网页标题 + } + + + }, onWebResourceError: (WebResourceError error) {}, onNavigationRequest: (NavigationRequest request) { if (request.url.startsWith('')) { diff --git a/circle_app/lib/util/util.dart b/circle_app/lib/util/util.dart index 8cda78a..3db5075 100644 --- a/circle_app/lib/util/util.dart +++ b/circle_app/lib/util/util.dart @@ -276,21 +276,7 @@ Future getLibraryDirectoryPath() async { return directory.path; } -//跳转到用户协议 -void navigateToUserAgreement() { - Get.toNamed(AppRoutes.WebViewActivity, arguments: { - 'title': "用户协议", - "url":"https://docs.qq.com/doc/DZVV1SkttZGlPUW1H" - }); -} -//跳转到隐私政策 -void navigateToPrivacyPolicy() { - Get.toNamed(AppRoutes.WebViewActivity, arguments: { - 'title': "隐私协议", - "url": "https://docs.qq.com/doc/DZXhvcXV6b1RNTUx1" - }); -} //跳转到文明公约 void navigateToCodeOfConduct() { @@ -300,13 +286,26 @@ void navigateToCodeOfConduct() { }); } +//跳转到用户协议 +void navigateToUserAgreement() { + Get.toNamed(AppRoutes.WebViewActivity, arguments: { + 'title': "用户协议", + "url": Platform.isIOS?"https://docs.qq.com/doc/DZVV1SkttZGlPUW1H":"https://iquanpai.com/app-h5/4_163.html" + }); +} - +//跳转到隐私政策 +void navigateToPrivacyPolicy() { + Get.toNamed(AppRoutes.WebViewActivity, arguments: { + 'title': "隐私协议", + "url": Platform.isIOS?"https://docs.qq.com/doc/DZXhvcXV6b1RNTUx1":"https://iquanpai.com/app-h5/4_164.html" + }); +} //发布内容规范 void navigateToContentGuidelines() { Get.toNamed(AppRoutes.WebViewActivity, arguments: { 'title': "发布内容规范", - "url": "https://docs.qq.com/doc/DZVhLamZDQnJ0eHds" + "url": Platform.isIOS?"https://docs.qq.com/doc/DZVhLamZDQnJ0eHds":"https://iquanpai.com/app-h5/4_165.html" }); } @@ -314,9 +313,8 @@ void navigateToContentGuidelines() { void navigateToPartnerAgreement() { Get.toNamed(AppRoutes.WebViewActivity, arguments: { 'title': "合伙人协议", - "url": "https://docs.qq.com/doc/DZUpwWFdNcGlsYld4" + "url": Platform.isIOS?"https://docs.qq.com/doc/DZUpwWFdNcGlsYld4":"https://iquanpai.com/app-h5/4_166.html" }); } -