是否有任何有SFAuthorizationPluginView经验的人都知道如何识别用户之间按“取消”和“返回”。我的问题是 SFButtonTypeCancel 与 SFButtonTypeBack 相同,因此 switch 语句在编译时会失败,而 if >声明不承认差异。
当将登录屏幕显示为“名称和密码”时,这不是问题,但当显示为“用户列表”时,将“返回”作为“取消”处理会使登录窗口重新启动而不是很好地转移到列表。
此致 艾伦
答案 0 :(得分:0)
要回答我自己的问题,登录窗口在快速用户切换时有一个取消按钮,在登录屏幕时有一个BACK按钮,因此我设法通过以下代码识别两个按钮:
CFStringRef str_console_uname;
uid_t uid;
gid_t gid;
// get console username
str_console_uname = SCDynamicStoreCopyConsoleUser(NULL,
&uid,
&gid);
if (!str_console_uname ||
[(NSString *)str_console_uname compare:@"loginwindow"] == 0)
{
/* BACK BUTTON */
}
else
{
/* CANCEL BUTTON */
}