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

IOS 导航栏按钮切换(三)

2013-03-03 15:37 295 查看
如图所示,在导航栏中添加横向多个按钮,向table页一样通过点击按钮可以来回的切换屏幕中央视图。





前面的文章中有介绍使用纯代码来添加一个图片视图,不过最近有盆友问我怎么使用IB来添加图片视图,刚好这篇我就介绍如何使用IB的方式来添加,其实很简单。

先把图片资源文件0.jpg拖入工程中,打开视图对应的.xib文件,如下图所示将imageView控件拖入视图中

Image:选中视图显示的资源文件

Tag:标志资源文件的索引,根据这个索引就可以拿到这个ImageView的对象。





导航栏的创建方法,还不会的朋友请看上一章,接下来在导航栏中添加segmented,横向按钮。

01
-
(
void
)viewDidLoad
02
{
03
[super
viewDidLoad];
04
05
//创建一个导航栏
06
UINavigationBar
*navigationBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
07
08
//创建一个导航栏集合
09
UINavigationItem
*navigationItem = [[UINavigationItem alloc] initWithTitle:nil];
10
11
//向导航栏集合中添加横向按钮列表
12
NSArray
*buttons = [NSArray arrayWithObjects:@
"雨松MOMO"
,
@
"若若娃"
,
@
"小可爱"
,
@
"哇咔咔"
,
nil];
13
UISegmentedControl*
segmentedControl = [[UISegmentedControl alloc] initWithItems:buttons];
14
15
//设置横向按钮风格
16
segmentedControl.segmentedControlStyle
= UISegmentedControlStyleBar;
17
18
//添加按钮响应事件
19
[segmentedControl
addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventValueChanged];
20
21
//把导航栏集合添加入导航栏中,设置动画关闭
22
[navigationBar
pushNavigationItem:navigationItem animated:NO];
23
24
//将横向列表添加到导航栏
25
navigationItem.titleView
= segmentedControl;
26
27
//把导航栏添加到视图中
28
[self.view
addSubview:navigationBar];
29
30
//释放对象
31
[navigationItem
release];
32
[segmentedControl
release];
33
34
}
切换点击导航栏按钮后将执行buttonAction方法,这个方法中我主要说说[self.view viewWithTag:10 ]。意思就是根据索引找到id为10 的这个view对象,和上面介绍的Tag一一对应。这里和android 的开发有点像喔。

01
-(
void
)
buttonAction: (UISegmentedControl *) sender
02
{
03
//得到按钮点击索引
04
NSInteger
index = sender.selectedSegmentIndex;
05
06
//算出对应图片名称
07
NSString
*show = [NSString stringWithFormat:@
"%d%@"
,index,@
".jpg"
];
08
09
//通过tag得到视图对象
10
UIImageView
*imageView = (UIImageView *)[self.view viewWithTag:10];
11
12
//绘制新图片
13
[imageView
setImage:[UIImage imageNamed:show]];
14
15
}
切换点击按钮后,看看效果,视图发生了改变,哇咔咔~~~



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