直接上代碼
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