IOS导航栏的使用方法
本文是使用纯代码实现一个导航栏的效果。单击按钮并且产生事件。基本思路是:
1.创建一个导航栏(UINavigationBar对象)
2.创建一个导航栏集合(UINavigationItem对象)
3.创建一个左边按钮、一个右边按钮(UIBarButtonItem对象),并实现对应的事件方法
4.将导航栏集合添加到导航栏中,设置动画关闭
5.把左右两个按钮添加到导航栏集合中去
6.在视图中显示当前创建的导航栏
具体的实现代码如下:
ViewController.h文件中的代码不用改变,如下所示:
#import <UIKit/UIKit.h>@interface ViewController : UIViewController@end
ViewController.m文件中的代码:
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad
{[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.//创建一个导航栏UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];//创建一个导航栏集合UINavigationItem *navItem = [[UINavigationItem alloc] initWithTitle:nil];//在这个集合Item中添加标题,按钮//style:设置按钮的风格,一共有三种选择//action:@selector:设置按钮的点击事件//创建一个左边按钮UIBarButtonItem *leftButton = [[UIBarButtonItem alloc] initWithTitle:@"左边" style:UIBarButtonItemStyleBordered target:self action:@selector(clickLeftButton)];//创建一个右边按钮UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithTitle:@"右边" style:UIBarButtonItemStyleDone target:self action:@selector(clickRightButton)];//设置导航栏的内容[navItem setTitle:@"凌凌漆"];//把导航栏集合添加到导航栏中,设置动画关闭[navBar pushNavigationItem:navItem animated:NO];//把左右两个按钮添加到导航栏集合中去[navItem setLeftBarButtonItem:leftButton];[navItem setRightBarButtonItem:rightButton];//将标题栏中的内容全部添加到主视图当中[self.view addSubview:navBar];//最后将控件在内存中释放掉,以避免内存泄露[navItem release];[leftButton release];[rightButton release];
}-(void)showDialog:(NSString *)str
{UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"这是一个对话框" message:str delegate:self cancelButtonTitle:@"确定" otherButtonTitles: nil];[alert show];[alert release];
}-(void) clickLeftButton
{[self showDialog:@"点击了导航栏左边按钮"];
}-(void) clickRightButton
{[self showDialog:@"点击了导航栏右边按钮"];
}- (void)viewDidUnload
{[super viewDidUnload];// Release any retained subviews of the main view.
}- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}@end
IOS导航栏的使用方法相关推荐
- ios 系统状态栏样式修改_iOS 一种新的修改导航栏样式的方法(支持iOS10).
iOS 一种新的修改导航栏样式的方法. 开宗明义: 对系统导航栏最底层的UIView加一层CALayer, 通过操作这个自己创建的CALayer来修改导航栏样式. 修改系统导航栏样式的几种方法 1.使 ...
- iOS导航栏使用总结
点击上方"程序员大咖",选择"置顶公众号" 关键时刻,第一时间送达! 作者:风恣 文:https://www.jianshu.com/p/50cd38f2772 ...
- 网站导航栏SEO优化方法
当我们进去一个网站主页的时候,通常会先看导航栏有什么内容标题.然后根据自己的需求直接点击导航栏上所对应的标题,从而进去相关网页进行浏览.可以说,导航栏是网站的地图.能让用户更快更好地找到所需要的内容, ...
- iOS 导航栏隐藏和显示
1: 导航栏隐藏.显示之间跳转 iOS 导航栏对于隐藏造成的动画 可以通过在 viewWillAppear 和 viewWillDisappear 来设置完成 - (void)viewWillAppe ...
- Android获取屏幕宽高,状态栏宽高,actionbar宽高,layout宽高,导航栏高度的方法汇总
看这个博客你可以知道 获取屏幕宽高,状态栏宽高,actionbar宽高,layout宽高,导航栏(虚拟按键栏)高度的方法 目录顺序为 代码测试的机型 状态栏高度 actionbar高度 屏幕高度 导航 ...
- vue制作导航栏html,Vue如何实现导航栏菜单的方法
Vue如何实现导航栏菜单的方法 发布时间:2020-08-20 09:42:45 来源:亿速云 阅读:235 作者:小新 这篇文章将为大家详细讲解有关Vue如何实现导航栏菜单的方法,小编觉得挺实用的, ...
- iOS 开发之 - iOS6适配 - 导航栏按钮透明方法
首先上张图: 1:ios6导航栏默认按钮 rightBarButtonItem 是不是很丑的赶脚? 现在通过以下方法来改变以下:code: UIButton *rightButton = [UIB ...
- iOS导航栏标题错乱的解决方法
一般隐藏和显示导航栏,只要在基类如下写就好: -(BOOL)needHiddenNavigationBar:(UIViewController *)vc{BOOL isHidden = NO;if ( ...
- iOS导航栏遮挡问题的总结
一.背景:在做开发的时候经常不经意就出现导航栏遮挡主视图的情况,之前出现这种情况我会先看看View UI Hierarchy,然后把视图的坐标手动调整,例如把视图的y坐标写成64(建议封装成宏,因为有 ...
最新文章
- 要想进入顶级数据公司,2020年数据科学10大技能帮你加分
- C# WebBrowser document.execCommand()解析
- 520 钻石争霸赛 7-6 矩阵列平移(循环)
- 基于openfire源码开发插件
- 产品经理如何培养敏锐的商业嗅觉
- zip unzip命令行_Linux / Unix中的Zip和Unzip命令
- Mac OS 使用asio库
- Lync学习资料分享
- c++ vs2015 播放音乐_三星s20都取消了耳机孔,1k-2k的播放器会成为直推党新选择吗?...
- 考研这么卷,换条路试试​?互联网IT校园招聘信息大全!
- 计算机上面的按键作用,电脑键盘上各种键的作用是什么 电脑键盘上每个键的作用说明【图文】...
- 忍者必须死代码 免费
- 【离散数学】关于欧拉图与哈密顿图的讨论
- 最新Python教程全套合集项目实战(完整)
- upx脱壳工具_攻防世界simple_unpack_逆向之旅003
- 【bzoj2434】阿狸的打字机 AC自动机+树状数组
- Linux下轻松刻录CD-ROM数据光盘
- 港大计算机硕士面试多久有通知,港大计算机 HKU CS面试准备
- 自定义new Date()格式显示,适用JavaScript / Nodejs / Vue / React / UniApp / 其他基于js工程的项目
- Pybind11 的 CMakeList 说明