import 'package:flutter/material.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart';
import 'package:loading_indicator/loading_indicator.dart';
import '../../widgets/constants.dart';
import '../../env.dart';
import '../../localization/app_localizations.dart';
import '../../widgets/api_services.dart';
import '../../widgets/size_config.dart';
class WeddingPlansScreen extends StatefulWidget {
@override
_WeddingPlansScreenState createState() => _WeddingPlansScreenState();
}
class _WeddingPlansScreenState extends State {
late InAppWebViewController _webViewController;
bool isLoading = true;
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
SizeConfig().init(context);
return WillPopScope(
onWillPop: () async {
if (await _webViewController.canGoBack()) {
// Navigate back within the WebView
_webViewController.goBack();
return false; // Prevent closing the WebView
}
return true; // Close the WebView screen
},
child: Scaffold(
appBar: AppBar(
automaticallyImplyLeading: false,
leading: IconButton(
icon: Icon(
Icons.arrow_back_ios_new_outlined,
color: Environment.appTheme,
size: Constants.space25,
),
onPressed: () {
Navigator.pop(context);
},
),
backgroundColor: Constants.whiteColor,
title: Text("Wedding Packages"),
),
body: Stack(
children: [
InAppWebView(
initialUrlRequest: URLRequest(
url: WebUri.uri(Uri.parse('${Environment.testUrl}')),
),
onLoadStart: (controller, url) {
setState(() {
isLoading = true;
});
},
onLoadStop: (controller, url) async {
setState(() {
isLoading = false;
});
},
onWebViewCreated: (controller) {
_webViewController = controller;
},
),
if (isLoading)
Center(
child: Container(
height: Constants.height35,
width: Constants.height35,
child: LoadingIndicator(
strokeWidth: 3.0,
indicatorType: Indicator.lineSpinFadeLoader,
colors: [Constants.darkGreyColor.withOpacity(0.6), Constants.darkGreyColor.withOpacity(0.6),],
),
)
),
],
),
),
);
}
}
< /code>
Я сейчас работаю на экране WebView в моем приложении Flutter. Тем не менее, я сталкиваюсь с проблемой, в которой файлы PDF не открываются правильно в рамках WebView. Когда я пытаюсь открыть PDF, я получаю следующее сообщение об ошибке в консоли.I/chromium(17997): [INFO:CONSOLE:1] "[object HTMLAnchorElement]", source: https://testurl.com/_next/static/chunks ... de73a8f.js (1)
I/chromium(17997): [INFO:CONSOLE:1] "end", source: https://testurl.com/_next/static/chunks ... de73a8f.js (1)
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onConsoleMessage" using {messageLevel: 1, message: [object HTMLAnchorElement]}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onConsoleMessage" using {messageLevel: 1, message: end}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onProgressChanged" using {progress: 10}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onProgressChanged" using {progress: 100}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onProgressChanged" using {progress: 100}
Подробнее здесь: https://stackoverflow.com/questions/796 ... in-webview
Flutter: PDF -файл inappwebView не открывается в WebView ⇐ Android
Форум для тех, кто программирует под Android
-
Anonymous
1749130618
Anonymous
import 'package:flutter/material.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart';
import 'package:loading_indicator/loading_indicator.dart';
import '../../widgets/constants.dart';
import '../../env.dart';
import '../../localization/app_localizations.dart';
import '../../widgets/api_services.dart';
import '../../widgets/size_config.dart';
class WeddingPlansScreen extends StatefulWidget {
@override
_WeddingPlansScreenState createState() => _WeddingPlansScreenState();
}
class _WeddingPlansScreenState extends State {
late InAppWebViewController _webViewController;
bool isLoading = true;
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
SizeConfig().init(context);
return WillPopScope(
onWillPop: () async {
if (await _webViewController.canGoBack()) {
// Navigate back within the WebView
_webViewController.goBack();
return false; // Prevent closing the WebView
}
return true; // Close the WebView screen
},
child: Scaffold(
appBar: AppBar(
automaticallyImplyLeading: false,
leading: IconButton(
icon: Icon(
Icons.arrow_back_ios_new_outlined,
color: Environment.appTheme,
size: Constants.space25,
),
onPressed: () {
Navigator.pop(context);
},
),
backgroundColor: Constants.whiteColor,
title: Text("Wedding Packages"),
),
body: Stack(
children: [
InAppWebView(
initialUrlRequest: URLRequest(
url: WebUri.uri(Uri.parse('${Environment.testUrl}')),
),
onLoadStart: (controller, url) {
setState(() {
isLoading = true;
});
},
onLoadStop: (controller, url) async {
setState(() {
isLoading = false;
});
},
onWebViewCreated: (controller) {
_webViewController = controller;
},
),
if (isLoading)
Center(
child: Container(
height: Constants.height35,
width: Constants.height35,
child: LoadingIndicator(
strokeWidth: 3.0,
indicatorType: Indicator.lineSpinFadeLoader,
colors: [Constants.darkGreyColor.withOpacity(0.6), Constants.darkGreyColor.withOpacity(0.6),],
),
)
),
],
),
),
);
}
}
< /code>
Я сейчас работаю на экране WebView в моем приложении Flutter. Тем не менее, я сталкиваюсь с проблемой, в которой файлы PDF не открываются правильно в рамках WebView. Когда я пытаюсь открыть PDF, я получаю следующее сообщение об ошибке в консоли.I/chromium(17997): [INFO:CONSOLE:1] "[object HTMLAnchorElement]", source: https://testurl.com/_next/static/chunks/pages/%5B%5B...slug%5D%5D-f8d06f337de73a8f.js (1)
I/chromium(17997): [INFO:CONSOLE:1] "end", source: https://testurl.com/_next/static/chunks/pages/%5B%5B...slug%5D%5D-f8d06f337de73a8f.js (1)
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onConsoleMessage" using {messageLevel: 1, message: [object HTMLAnchorElement]}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onConsoleMessage" using {messageLevel: 1, message: end}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onProgressChanged" using {progress: 10}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onProgressChanged" using {progress: 100}
[AndroidInAppWebViewController] (android) WebView ID 0 calling "onProgressChanged" using {progress: 100}
Подробнее здесь: [url]https://stackoverflow.com/questions/79654483/flutter-inappwebview-pdf-file-not-opening-in-webview[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия