修改iOS返回按鈕的幾種方式


第一種

UIImage *backButtonImage = [[UIImage imageNamed:@"back"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 25, 0, 0)];

[[UIBarButtonItem appearance] setBackButtonBackgroundImage:backButtonImage forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(NSIntegerMin, NSIntegerMin) forBarMetrics:UIBarMetricsDefault];
提示:上面這種方法會被系統給拉伸,需要在當前控制器里面設置
第二種

UIBarButtonItem *backItem = [[UIBarButtonItem alloc] init];
backItem.title = @"";
//主要是以下兩個圖片設置
self.navigationController.navigationBar.backIndicatorImage = [UIImage imageNamed:@"backPic"];
self.navigationController.navigationBar.backIndicatorTransitionMaskImage = [UIImage imageNamed:@"backPic"];        
self.navigationItem.backBarButtonItem = backItem;
提示: 這種方法在父類方法中設置好使
-以上兩種方法都是在不改變系統手勢滑動返回的情況下的

第三種

//創建一個UIButton
UIButton *backButton = [[UIButton alloc]initWithFrame:CGRectMake(0, 0, 40, 40)];
//設置UIButton的圖像
[backButton setImage:[UIImage imageNamed:@"left_select_img.png"] forState:UIControlStateNormal];
//給UIButton綁定一個方法,在這個方法中進行popViewControllerAnimated
[backButton addTarget:self action:@selector(backItemClick) forControlEvents:UIControlEventTouchUpInside];
//然后通過系統給的自定義BarButtonItem的方法創建BarButtonItem
UIBarButtonItem *backItem = [[UIBarButtonItem alloc]initWithCustomView:backButton];
//覆蓋返回按鍵
self.navigationItem.leftBarButtonItem = backItem;
提示:這種方法會失去手勢滑動返回的功能
第四種

//重新創建一個barButtonItem
UIBarButtonItem *backItem = [[UIBarButtonItem alloc]initWithTitle:@"你想要設置的返回按鈕文字" style:UIBarButtonItemStylePlain target:nil action:nil];
//設置backBarButtonItem即可
self.navigationItem.backBarButtonItem = backItem;
提示:上面這種方式只是在父類那里加,修改返回文字而已 至於返回圖標還是系統提供的 手勢滑動返回依然存在 作者:七里田間的守望者 鏈接:http:
//www.jianshu.com/p/0103cd689cfa 來源:簡書
https://www.2cto.com/kf/201706/648999.html


https://blog.csdn.net/u011096206/article/details/50606778 這篇寫的極好

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM