Android 如何删除WebView上的AppBar?
是否有任何方法可以删除此代码中的appbar?或者我可以把它藏起来? 我想返回webview应用程序中不带appbar的按钮Android 如何删除WebView上的AppBar?,android,flutter,dart,appbar,Android,Flutter,Dart,Appbar,是否有任何方法可以删除此代码中的appbar?或者我可以把它藏起来? 我想返回webview应用程序中不带appbar的按钮 导入'dart:async'; 导入“dart:convert”; 进口“包装:颤振/材料.省道”; 导入“package:webview_flatter/webview_flatter.dart”; void main()=>runApp(MaterialApp(home:WebViewExample()); 常量字符串kNavigationExamplePage=
导入'dart:async';
导入“dart:convert”;
进口“包装:颤振/材料.省道”;
导入“package:webview_flatter/webview_flatter.dart”;
void main()=>runApp(MaterialApp(home:WebViewExample());
常量字符串kNavigationExamplePage=''
导航代理示例
导航代理设置为阻止到youtube网站的导航。
''';
类WebViewExample扩展StatefulWidget{
@凌驾
_WebViewExampleState createState()=>\u WebViewExampleState();
}
WebViewController控制器全局;
Future\u exitap(BuildContext上下文)异步{
if(等待controllerGlobal.canGoBack()){
打印(“onwill goback”);
controllerGlobal.goBack();
}否则{
Scaffold.of(上下文).showSnackBar(
const SnackBar(内容:文本(“无历史记录项”),
);
返回Future.value(false);
}
}
类_WebViewExampleState扩展状态{
最终完成器控制器=
完成符();
@凌驾
小部件构建(构建上下文){
返回式示波器(
onWillPop:()=>\u exitApp(上下文),
孩子:脚手架(
appBar:appBar(
标题:const Text(‘颤振网络视图示例’),
//此下拉菜单演示了可以在web视图上显示颤振小部件。
行动:[
导航控件(_controller.future),
],
),
//我们在这里使用了一个构建器,所以我们有一个位于脚手架下面的上下文
//允许调用Scaffold.of(context),以便显示一个snackbar。
主体:生成器(生成器:(BuildContext上下文){
返回WebView(
初始URL:'https://flutter.dev',
javascriptMode:javascriptMode.unrestricted,
onWebViewCreated:(WebViewController WebViewController){
_控制器。完成(webViewController);
},
//TODO(iskakaushik):当集合文字使其稳定时,将其删除。
//忽略:首选\u集合\u文字
JavaScriptChannel:[
_toasterJavascriptChannel(上下文),
].toSet(),
navigationDelegate:(NavigationRequest请求){
if(request.url.startsWith('https://www.youtube.com/')) {
打印('阻止导航到$request}');
返回NavigationDecision.prevent;
}
if(request.url.startsWith('https://flutter.dev/docs')) {
打印('阻止导航到$request}');
返回NavigationDecision.prevent;
}
打印(“允许导航到$request”);
返回NavigationDecision.navigate;
},
onPageFinished:(字符串url){
打印('Page finished loading:$url');
},
);
}),
floatingActionButton:favoriteButton(),
),
);
}
JavascriptChannel\u toasterJavascriptChannel(构建上下文){
返回JavascriptChannel(
名称:“烤面包机”,
onMessageReceived:(JavascriptMessage消息){
Scaffold.of(上下文).showSnackBar(
SnackBar(内容:Text(message.message)),
);
});
}
小部件收藏夹按钮(){
回归未来建设者(
未来:_controller.future,
生成器:(BuildContext上下文,
异步(快照控制器){
if(controller.hasData){
返回浮动操作按钮(
onPressed:()异步{
最终字符串url=wait controller.data.currentUrl();
Scaffold.of(上下文).showSnackBar(
SnackBar(内容:文本('Favorited$url')),
);
},
子:常量图标(Icons.favorite),
);
}
返回容器();
});
}
}
枚举菜单选项{
showUserAgent,
listCookies,
clearCookies,
addToCache,
listCache,
clearCache,
导航代表,
}
类SampleMenu扩展了无状态小部件{
采样菜单(this.controller);
最终未来控制人;
最终CookieManager CookieManager=CookieManager();
@凌驾
小部件构建(构建上下文){
回归未来建设者(
未来:财务总监,
建设者:
(BuildContext上下文,异步快照控制器){
返回弹出菜单按钮(
onSelected:(菜单选项值){
开关(值){
案例菜单选项.showUserAgent:
_onShowUserAgent(controller.data,context);
打破
案例菜单选项。列表cookies:
_onListCookie(controller.data、context);
打破
案例菜单选项.clearCookies:
_onClearCookies(上下文);
打破
案例菜单选项.addToCache:
_onAddToCache(controller.data,context);
打破
案例菜单选项.listCache:
_onListCache(controller.data,context);
打破
案例菜单选项.clearCache:
_onClearCache(controller.data,context);
打破
案例菜单选项.navigationDelegate:
_onNavigationDelegateExample(controller.data,context);
打破
}
},
itemBuilder:(构建上下文)=>[
PopupMenuItem(
值:MenuOptions.showUserAgent,
子项:const Text('Show user agent'),
已启用:controller.hasData,
),
常数PopupMenuItem(
值:MenuOptions.listCookies,
子项:文本(“列表cookies”),
),
常数PopupMenuItem(
值:MenuOptions.clearCookies,
子项:文本(“清除cookies”),
),