我是新手,这是我的第一个问题。 是否有人让我知道我们是否能够或不能在UISwitch的“开启”状态下弹出系统警报。 我知道我们可以有自定义警报,但我不想那样。它与GPS有关,当用户打开开关时,它应该给你一个系统警报要求你的GPS。
答案 0 :(得分:0)
不,当应用访问Core Location时会自动显示。如果用户拒绝它,它会在下次启动时再次显示,然后它会保持安静并且不再显示。
因此,您无法再强制显示此对话框。 iOS将在下次启动应用时再次询问用户。
编辑:如果您需要显示GPS警报,您可以检查GPS是否已启用,就像用户位置为零一样。如果它不是nil然后设置你的开关启用其他设置disbled。
MKUserLocation *userLocation = mapView.userLocation;
if (!userLocation.location)
{
// Show an alert here to turn on Location service
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Location Service Disabled"
message:@"To re-enable, please go to Settings and turn on Location Service for this app."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
因此用户可以直接在设置中启用GPS。
希望它对你有所帮助。