[英]How to call an asynchronous function inside flutter PopupMenuButton?
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
choiceAction(BuildContext context)async{
SharedPreferences preferences = await SharedPreferences.getInstance();
preferences.setBool("isLogin", false);
Navigator.pushNamed(context, '/login');
}
Widget aapBarSection(String title, Color color, BuildContext context){
return AppBar(
title: Text(title, style:TextStyle(fontFamily: 'Poppins-Regular'), ),
centerTitle: true,
backgroundColor: color,
actions: [
PopupMenuButton<String>(
onSelected: choiceAction,
offset: Offset.zero,
itemBuilder: (BuildContext context) {
return <PopupMenuEntry<String>>[
PopupMenuItem(
child: Row(
children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Icon(Icons.logout, color: Colors.black,),
),
Text('Logout'),
],
),
value: 'Logout',
)
];
},
)
],
leading: IconButton(
icon: Icon(Icons.arrow_back),
onPressed: (){
exit(0);
},
),
);
}
想在 onSelected 属性中调用异步 function,我该怎么做? 因为我想在应用程序栏中添加一个注销选项,并通过调用 function 单击注销时,它应该更改共享首选项中的 is_login 状态,并导航到登录屏幕。
任何人请帮忙!
onSelected: (value) async {
// your code
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.