[關(guān)于協(xié)議界面的問題][ios]



開發(fā)要求:

聯(lián)網(wǎng)的時候,有協(xié)議數(shù)據(jù)的時候從上往下彈出界面,每個用戶必須同意協(xié)議才能使用app,否則退出應(yīng)用(exit(0));

我的解決方案:在comment類里,寫個類方法,實(shí)現(xiàn)

if (![[NSUserDefaults standardUserDefaults] boolForKey:@"showUserAgreementViewController"]) {

CATransition *transition = [CATransition animation];

transition.duration = 0.3f;

transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];

transition.type = kCATransitionMoveIn;

transition.subtype = kCATransitionFromBottom;

[ESControllerManager pushViewController:@"ESUserAgreementViewController" Parameters:@{@"title":daRenAgreementTitle,@"content":daRenAgreementContent,@"ID":@(daRenAgreementID)} Animated:NO];

[[ESControllerManager getRootNavigationController].view.layer addAnimation:transition forKey:nil];

}

});

bug:

1,當(dāng)手機(jī)沒電,強(qiáng)制關(guān)機(jī)等突然中止應(yīng)用的時候,再此打開應(yīng)用時,協(xié)議不能彈出;

為防止界面彈出多次,我在本地保存一個bool值,標(biāo)示界面是否在彈出boolForKey:@"showUserAgreementViewController",問題就在這里,如果突然中止應(yīng)用,這個bool值還是yes,界面如何能彈出來呢

2,當(dāng)?shù)顷憫?yīng)用的時候,彈出主頁,協(xié)議不彈出;

這種情況,主界面第二次彈出還帶有動畫,其實(shí)還是蠻好玩的,這個問題是在push上,當(dāng)兩個界面同時彈出時,一個界面覆蓋另一個界面,顯示出來的界面就有一定的不確定行

解決方案:

應(yīng)用代碼:

if (![ESUserAgreementViewController IsShow]) {

[ESUserAgreementViewController Show:daRenAgreementTitle Content:daRenAgreementContent ID:daRenAgreementID];

}

界面搭建:將界面放到一個window上,界面是否彈出標(biāo)示 設(shè)置成靜態(tài)變量

static UIWindow* window;

static BOOL isShow;

@implementation ESUserAgreementViewController

+(BOOL)IsShow

{

return isShow;

}

+(void)Init

{

if(!window)

{

window=[[UIWindow alloc]initWithFrame:CGRectMake(0, 0, ESWidth, ESHeight)];

window.windowLevel=1499.9;

window.hidden=YES;

[window makeKeyAndVisible];

}

}

+(void)Show:(NSString*)title Content:(NSString*)content ID:(int)ID

{

isShow=YES;

[ESUserAgreementViewController Init];

ESUserAgreementViewController* viewController=[[ESUserAgreementViewController alloc]init];

[viewController setParameters:@{@"title":title,@"content":content,@"ID":@(ID)}];

for (UIView* view in window.subviews) {

[view removeFromSuperview];

}

[window setRootViewController:viewController];

[window addSubview:viewController.view];

window.frame=CGRectMake(0, -ESHeight, ESWidth, ESHeight);

window.hidden=NO;

[UIView animateWithDuration:0.3 animations:^{

window.frame=CGRectMake(0, 0, ESWidth, ESHeight);

}];

}

+(void)Hide

{

isShow=NO;

[UIView animateWithDuration:0.3 animations:^{

window.frame=CGRectMake(0, -ESHeight, ESWidth, ESHeight);

}];

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • /* UIViewController is a generic controller base class th...
    DanDanC閱讀 2,054評論 0 2
  • *7月8日上午 N:Block :跟一個函數(shù)塊差不多,會對里面所有的內(nèi)容的引用計數(shù)+1,想要解決就用__block...
    炙冰閱讀 2,738評論 1 14
  • //設(shè)置尺寸為屏幕尺寸的時候self.window = [[UIWindow alloc] initWithFra...
    LuckTime閱讀 979評論 0 0
  • 昨天的夜里,我恍惚著 仿佛確是遇見你了 在額濟(jì)納齊河的左岸 ...
    茶桑閱讀 479評論 6 5
  • 你來自遙遠(yuǎn)的小小星球 在此與我匯合 你眸子清澈 如星辰墜落 你說 那是流年的光澤 你笑了笑 臉上有好看的梨渦 可眉...
    蕪城花開閱讀 483評論 5 5

友情鏈接更多精彩內(nèi)容