欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

ios開發(fā)返回按鈕,ios 右側返回

iOS 調整導航欄返回按鈕的位置

UIButton* leftBtn = [UIButtonbuttonWithType:UIButtonTypeSystem];

創(chuàng)新互聯主營靈山網站建設的網絡公司,主營網站建設方案,成都App定制開發(fā),靈山h5成都小程序開發(fā)搭建,靈山網站營銷推廣歡迎靈山等地區(qū)企業(yè)咨詢

leftBtn.frame=CGRectMake(0,0,25,25);

[leftBtnsetBackgroundImage:[UIImageimageNamed:@"icon_back"]forState:UIControlStateNormal];

[leftBtnaddTarget:selfaction:@selector(leftBarBtnClicked:)forControlEvents:UIControlEventTouchUpInside];

UIBarButtonItem* leftBarBtn = [[UIBarButtonItemalloc]initWithCustomView:leftBtn];

UIBarButtonItem* spaceItem = [[UIBarButtonItemalloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpacetarget:nilaction:nil];

spaceItem.width= -15;

self.navigationItem.leftBarButtonItems=@[spaceItem,leftBarBtn];

iOS app 右滑返回

前提條件,存在A和B兩個頁面,A是主界面,A push 到 B

方法一:如果B頁面的返回按鈕要用自定義的按鈕(在iOS7中,如果使用了UINavigationController,那么系統(tǒng)自帶的附加了一個從屏幕左邊緣開始滑動可以實現pop的手勢。但是,如果自定義了navigationItem的leftBarButtonItem,那么這個手勢就會失效。)

在A界面:

- (void)viewDidAppear:(BOOL)animated {

self.navigationController.interactivePopGestureRecognizer.delegate = (id)self;//重新設置代理

self.navigationController.interactivePopGestureRecognizer.enabled = NO;//本頁面不能右滑

}

在B里面:

設置返回按鈕:

UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];

backBtn.frame = CGRectMake(5, 2, 21, 35);

[backBtn setImage:[UIImage imageNamed:@"back"] forState:UIControlStateNormal];

[[backBtn rac_signalForControlEvents:UIControlEventTouchUpInside] subscribeNext:^(id x) {

[self.navigationController popViewControllerAnimated:YES];

}];

UIBarButtonItem *backItem = [[UIBarButtonItem alloc] initWithCustomView:backBtn];

self.navigationItem.leftBarButtonItem = backItem;

self.navigationController.interactivePopGestureRecognizer.enabled = YES;//最重要的一步

方法二:在A頁面里面(A頁面里面的backBarButtonItem其實就是我們看到的B頁面的返回按鈕,B頁面的leftBar是左側的按鈕,注意優(yōu)先級,B里面有自定義leftBar,顯示B頁面的,如果沒有,看A界面,如果里面有backBarButtonItem,顯示,如果沒有,就是系統(tǒng)默認的那個)

UIImage* image = [UIImage imageNamed:@"back"];

UIBarButtonItem *item = [[UIBarButtonItem alloc] init];

[item setBackButtonBackgroundImage:[image resizableImageWithCapInsets:UIEdgeInsetsMake(0, image.size.width, 0, 0)] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

[item setBackButtonTitlePositionAdjustment:UIOffsetMake(-400.f, 0) forBarMetrics:UIBarMetricsDefault];

self.navigationItem.backBarButtonItem = item;

self.navigationItem.backBarButtonItem = item;

我采用的是方法一,方法二我沒有辦法調整返回按鈕的位置

iOS 開發(fā) 監(jiān)聽側滑返回的系統(tǒng)方法

//開啟側滑

1.第一次push進來的時候兩個方法都會調用,parent的值不為空。

2.當開始使用系統(tǒng)側滑的時候,會先調用willMove,而parent的值為空;

3.當滑動結束后返回了上個頁面,則會調用didMove,parent的值也為空,如果滑動結束沒有返回上個頁面,也就是輕輕劃了一下還在當前頁面,那么則不會調用didMove方法。

當然,直接點擊返回按鈕,這兩個方法也會調用。可以判斷parent的值是否為空,進行具體的操作。

//開啟側滑

//關閉側滑

-(void)viewDidAppear:(BOOL)animated{

[super viewDidAppear:YES];

}

iOS 導航欄-返回按鈕-自定義

在開發(fā)過程中,我們經常遇到使用系統(tǒng)導航欄的功能,如何更改返回按鈕的樣式呢?

重寫返回按鈕一般是添加leftBarButtonItems。如果導航欄添加了leftBarButtonItems之后,會自動隱藏返回按鈕backBarButtonItem。

當我們使用了系統(tǒng)的導航欄時,默認點擊返回按鈕是 pop 回上一個界面。但是在有時候,我們需要在點擊導航欄的返回按鈕時不一定要 pop 回上一界面,可能是其他的頁面,我們需要攔截返回按鈕的pop操作。

1、重寫返回按鈕

具體操作查看上面“二、重寫返回按鈕”。

缺點 :若重寫了某個界面的返回按鈕,感覺應用整體就不統(tǒng)一了。而且每有一個界面有這個需求都需要重新自定義一個返回按鈕,顯得不優(yōu)雅,工作繁瑣。

2、為 UINavigationController 添加 category

我們可以為 UINavigatonController 創(chuàng)建一個 Category,來定制navigationBar: shouldPopItem: 的邏輯。

使用時,只需要在需要攔截返回按鈕事件的控制器中,應用#import "UIViewController+BackButtonHandler.h",并重寫-(BOOL)navigationShouldPopOnBackButton方法即可。

網頁題目:ios開發(fā)返回按鈕,ios 右側返回
鏈接地址:http://chinadenli.net/article5/dsigoii.html

成都網站建設公司_創(chuàng)新互聯,為您提供小程序開發(fā)虛擬主機營銷型網站建設網站策劃企業(yè)網站制作Google

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

微信小程序開發(fā)