国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iOS 自定義返回按鈕保留系統滑動返回功能

2020-07-26 02:57:52
字體:
來源:轉載
供稿:網友

先給大家展示下效果圖:

1679203-9008e5fab32df21b.gif

 1.簡介

使用蘋果手機,最喜歡的就是用它的滑動返回.作為一個開發者,我們在編寫很多頁面的時候,總是會因為這樣那樣的原因使得系統的滑動返回不可用.使用導航欄push出一個控制器,我們在控制器中自定義了一個返回按鈕.這樣系統默認的滑動返回手勢效果就沒有了.

2.解決方法

[1]從A這個控制器push到B這個控制器,我們想要自定義B的返回按鈕,我們可以在A中設置

self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"王儼" style:UIBarButtonItemStylePlain target:nil action:nil]; 

[2]在B控制器設置返回按鈕,我想這應該是大多數人喜歡的選擇,可是當我們在B控制器中設置self.navigationItem.leftBarButtonItem后發現系統的滑動返回手勢失效了.那么如何可以保留系統的滑動返回手勢了,我們可以B控制器中這樣做.

@interface ViewController ()  @end@implementation ViewController - (void)viewDidLoad {     [super viewDidLoad];    // 自定義返回按鈕     UIButton *button = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 44, 44)];     [button setTitle:@"王儼2" forState:UIControlStateNormal];     [button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];     [button addTarget:self action:@selector(back:) forControlEvents:UIControlEventTouchUpInside];    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithCustomView:button]; } - (void)back:(UIButton *)button {     [self.navigationController popViewControllerAnimated:YES]; } - (void)viewWillAppear:(BOOL)animated {   [super viewWillAppear:animated];  if (self.navigationController.viewControllers.count > 1) {     // 記錄系統返回手勢的代理     _delegate = self.navigationController.interactivePopGestureRecognizer.delegate;     // 設置系統返回手勢的代理為當前控制器     self.navigationController.interactivePopGestureRecognizer.delegate = self;   } } - (void)viewWillDisappear:(BOOL)animated {   [super viewWillDisappear:animated];   // 設置系統返回手勢的代理為我們剛進入控制器的時候記錄的系統的返回手勢代理   self.navigationController.interactivePopGestureRecognizer.delegate = _delegate; }#pragma mark - UIGestureRecognizerDelegate- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {    return self.navigationController.childViewControllers.count > 1; } - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {  return self.navigationController.viewControllers.count > 1; }@end 

以上所述是小編給大家介紹的iOS 自定義返回按鈕保留系統滑動返回功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 水富县| 新龙县| 夹江县| 遂昌县| 白河县| 花莲市| 湛江市| 香港 | 大关县| 安图县| 东至县| 闸北区| 重庆市| 黑水县| 淳化县| 兴城市| 西昌市| 栾川县| 岢岚县| 沅江市| 扶风县| 肃北| 中卫市| 汾西县| 鄯善县| 驻马店市| 旬阳县| 凤山县| 六安市| 原平市| 阿巴嘎旗| 大连市| 荔浦县| 扬州市| 孝昌县| 黑水县| 大丰市| 灌南县| 车险| 易门县| 政和县|