import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:star_lock/app_settings/app_colors.dart'; import 'package:star_lock/flavors.dart'; import 'package:star_lock/mine/about/webviewShow_logic.dart'; import 'package:star_lock/tools/titleAppBar.dart'; import 'package:webview_flutter/webview_flutter.dart'; class WebviewShowPage extends StatefulWidget { const WebviewShowPage({Key? key}) : super(key: key); @override State createState() => _WebviewShowPageState(); } class _WebviewShowPageState extends State { final logic = Get.put(WebviewShowLogic()); final state = Get.find().state; @override void initState() { super.initState(); } @override Widget build(BuildContext context) { state.webViewController.loadRequest(Uri.parse(state.webURL)); return F.sw(skyCall: () => defaultView(), xhjCall: () => xhjView()); } Widget defaultView() { return Scaffold( resizeToAvoidBottomInset: false, backgroundColor: const Color(0xFFFFFFFF), appBar: TitleAppBar( barTitle: getWebTitle(), haveBack: true, backgroundColor: AppColors.mainColor, ), body: Obx(() => Column( children: [ Container( padding: EdgeInsets.only(bottom: 10.w), child: LinearProgressIndicator( value: state.webProgress.value, backgroundColor: Colors.grey, valueColor: AlwaysStoppedAnimation(AppColors.mainColor), ), ), Expanded( child: WebViewWidget(controller: state.webViewController), ), ], ))); } Widget xhjView() { return SafeArea( child: Stack( children: [ WebViewWidget(controller: state.webViewController), IconButton( onPressed: () { Get.back(); }, icon: const Icon(Icons.arrow_back_ios)), ], ), ); } String getWebTitle() { String webTitleStr = state.webTitle; state.webViewController.getTitle().then((result) { webTitleStr = result!; }); return webTitleStr; } }