您的位置:首页 > 移动开发 > IOS开发

ios自定义导航navigation,设置navigation的背景图,navigation左边按钮,以及navigation字体颜色

2014-01-21 14:38 711 查看
- (void)viewDidLoad

{

[super viewDidLoad];

//控制系统自带的navigationbar不隐藏,也就是现实系统自带的导航控件navigationbar

self.navigationController.navigationBarHidden = NO;

//设置navigationbar的背景图片,如navigationbackground是我自己的图片的名称,记住在ios中一般需要图片的地方只要指明图片的名称就行了,如果要加上后缀也是可以的

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navigationbackground"] forBarMetrics:UIBarMetricsDefault];

//创建一个按钮的,按钮类型为UIButtonTypeCustome,还可以选择其他的,他是一个枚举类型

UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];

//给自己的按钮指定一个位置

backButton.frame = CGRectMake(0.0, 0.0, 40.0, 27.0);

//给按钮添加一个背景图片,forState:UIcontrolStateNormal表示正常情况现实该图片。

[backButton setImage:[UIImage imageNamed:@"back30"] forState:UIControlStateNormal];

//下面这句代码表示点击按钮是,也就是选中时会显示back40这个图片

[backButton setImage:[UIImage imageNamed:@"back40"] forState:UIControlStateSelected];

//给按钮添加一个时间,点击这个事件就触发,也可以理解为调用

[backButton addTarget:self action:@selector(backAction) forControlEvents:UIControlEventTouchUpInside];

//创建一个UIbarButtonItem,在后面会用到,因为按钮会绑定到这个UIbarButtonItem上面去。

UIBarButtonItem *temporaryBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];

temporaryBarButtonItem.style = UIBarButtonItemStylePlain;

//表示已经创建了UIBarButtonItem,现在将这个UibarButtonItem绑定到这个导航navigation上面去,并指定显示在左边。navigation中有左右之分,好像只有这两个,可能是小弟还没摸索透

self.navigationItem.leftBarButtonItem=temporaryBarButtonItem;

//下面是给navigation加上一个标题,如我这里是设置,为了能控制这个字体的大小变动,颜色变化,我是使用在navigation上面添加一个label的,通过控制lable来控制这个navigation的字体。

CGRect rect = CGRectMake(85, 18, 154, 43);

UILabel *label = [[UILabel alloc] initWithFrame:rect];

label.backgroundColor = [UIColor clearColor];

label.text = @"设 置";

label.textAlignment=UITextAlignmentCenter;

[label setTextColor:[UIColor whiteColor]];

label.adjustsFontSizeToFitWidth=YES;

//将创建的label绑定到这个navigation中去。

self.navigationItem.titleView=label;



.....

返回的方法就不写了,自己随便定义一个方法打印一下日子就行了。

谢谢
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐