我正在使用rust-macios
板条箱,我有这个简单的函数。
fn request_contact_permission() -> bool {
let store = CNContactStore::m_new();
store.request_access_for_entity_type_completion_handler(
CNEntityType::Contacts,
|granted: bool, _error: NSError| {
if granted {
println!("Access granted");
} else {
println!("Access denied");
}
},
);
}
如何让request_contact_permission
返回granted
的值?request_access_for_entity_type_completion_handler
触发一个对话框,并在用户与对话框交互时返回一个值。
1条答案
按热度按时间toe950271#
在不知道
store.request_access_for_entity_type_completion_handler
的确切类型的情况下,我不能肯定地说,但是假设它接受FnMut
或FnOnce
,您可以让它捕获一个可变的外部变量,然后返回该外部变量。