injectCSSFileFromUrl method
- required WebUri urlFile,
- CSSLinkHtmlTagAttributes? cssLinkHtmlTagAttributes,
{@template flutter_webview_platform_interface.PlatformInAppWebViewController.injectCSSFileFromUrl} Injects an external CSS file into the WebView from a defined url.
cssLinkHtmlTagAttributes
represents the possible CSS stylesheet <link>
HTML attributes to be set.
NOTE: This method shouldn't be called in the PlatformWebViewCreationParams.onWebViewCreated
or PlatformWebViewCreationParams.onLoadStart
events,
because, in these events, the WebView
is not ready to handle it yet.
Instead, you should call this method, for example, inside the PlatformWebViewCreationParams.onLoadStop
event or in any other events
where you know the page is ready "enough".
NOTE for Web: this method will have effect only if the iframe has the same origin.
Officially Supported Platforms/Implementations:
- Android native WebView
- iOS
- MacOS
- Web @{endtemplate}
Implementation
@override
Future<void> injectCSSFileFromUrl(
{required WebUri urlFile,
CSSLinkHtmlTagAttributes? cssLinkHtmlTagAttributes}) async {
assert(urlFile.toString().isNotEmpty);
Map<String, dynamic> args = <String, dynamic>{};
args.putIfAbsent('urlFile', () => urlFile.toString());
args.putIfAbsent(
'cssLinkHtmlTagAttributes', () => cssLinkHtmlTagAttributes?.toMap());
await channel?.invokeMethod('injectCSSFileFromUrl', args);
}