直接上代码
static UIAlertController* uiSettingAlert = nil;
void ShowSettingAlert(const char* title, const char* content, const char* leftTxt, const char* rightTxt)
{
if (uiSettingAlert == nil) {
uiSettingAlert = [UIAlertController alertControllerWithTitle:[[NSString alloc] initWithUTF8String:title] message:[[NSString alloc] initWithUTF8String:content] preferredStyle:UIAlertControllerStyleAlert];
//为alert增加一个Action,
UIAlertAction *okActin=[UIAlertAction actionWithTitle:[[NSString alloc] initWithUTF8String:rightTxt] style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action){
NSLog(@"你点击了确定");
Go2AppSettings();
// 不要dismiss否则崩溃
// [uiSettingAlert dismissViewControllerAnimated:NO completion:nil];
// uiSettingAlert = nil;
}];
[uiSettingAlert addAction:okActin];
//为alert增加一个‘取消’按钮
UIAlertAction *cancelAction=[UIAlertAction actionWithTitle:[[NSString alloc] initWithUTF8String:leftTxt] style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action){
NSLog(@"你点击了取消");
// 不要dismiss否则崩溃
// [uiSettingAlert dismissViewControllerAnimated:NO completion:nil];
// uiSettingAlert = nil;
}];
[uiSettingAlert addAction:cancelAction];
}
//显示
[UnityGetGLViewController() presentViewController:uiSettingAlert animated:YES completion:nil];
}
// 跳转到应用自己的设置界面,注意ios版本 >= 10
void Go2AppSettings()
{
NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
if( [[UIApplication sharedApplication]canOpenURL:url] ) {
[[UIApplication sharedApplication]openURL:url options:@{} completionHandler:nil];
}
}
unity调用代码
using System.Runtime.InteropServices;
using UnityEngine;
[DllImport("__Internal")]
private static extern void ShowSettingAlert(string title, string content, string leftTxt, string rightTxt);
public class Test : MonoBehaviour
{
public void OpenIOSAlertView()
{
string title = "“标题";
string content = "内容";
string cancelTxt = "取消";
string okTxt = "去设置";
ShowSettingAlert(title, content, cancelTxt, okTxt);
}
}
IOS原生弹窗参考
https://www.jianshu.com/p/75cef8007e75
https://www.jianshu.com/p/24255cd669b1
https://www.jianshu.com/p/af6f8260a811
https://www.jianshu.com/p/011d7f04729e
https://www.cnblogs.com/feelingzt/p/5354960.html
https://blog.csdn.net/lolita0164/article/details/79290564
https://www.jianshu.com/p/9e90cb866fdf
https://www.jianshu.com/p/455d5f0b3656
IOS跳转App自己的系统设置(>= 10)
https://blog.csdn.net/a910577347/article/details/78180274