最近經(jīng)理分給我一項(xiàng)任務(wù),讓在Unity應(yīng)用上添加高德地圖您宪。后來想來想去痕惋,還是跳轉(zhuǎn)到iOS原生界面進(jìn)行操作吧号俐,畢竟Unity跟我不熟.....
要想從Unity跳轉(zhuǎn)到iOS界面蚕键,我們首先要有一個按鈕吧救欧,這個讓Unity工程師去搞吧,反正我依然不會锣光。笆怠。。
于是乎誊爹,我們工程師給我一個按鈕的點(diǎn)擊事件蹬刷,如下所示:
Unity_iOS.png
其中 紅框框 里面的方法是需要我們iOS實(shí)現(xiàn)的,而且上面那句話不要省略F登稹0斐伞!
然后的然后搂漠,我們把Unity工程導(dǎo)出為Xcode迂卢,找到UnityAppController.mm
,并在里面添加代碼:
/*
* UnityAppController.mm
*/
@implementation UnityAppController
- (void) startToIOS {
XXViewController *xxVC = [[XXViewController alloc] init];
//跳轉(zhuǎn)之前我們要把Unity暫停,之后我們還要讓他恢復(fù)
UnityPause(true);
[UnityGetGLViewController() presentViewController:xxVC
animated:YES completion:nil];
}
@end
/*
* 注意:這個實(shí)現(xiàn)要寫在@end之后
*/
extern "C" {
void _UnityBtnClick() {
UnityAppController *appVC = [[UnityAppController alloc] init];
[appVC startToIOS];
}
}
最后我們就可以在XXViewController.m
里面盡情的揮發(fā)了冷守。
當(dāng)然,不要忘了惊科,在dismiss
的時候把Unity恢復(fù)活躍狀態(tài)
//XXViewController.m
//記得添加↓↓↓↓下面的↓↓↓↓↓這個頭文件
#import "UnityInterface.h"
- (void)backUnity {
[self dismissViewControllerAnimated:YES completion:^{
/*
*讓Unity從暫停的狀態(tài)中恢復(fù)出來
*如果沒有找到這個方法拍摇,請?zhí)砑宇^文件UnityInterface.h
*/
UnityPause(false);
}];
}