ios中uitoolbar点击事件只能通过代码添加吗

ios中uitoolbar点击事件只能通过代码添加吗,第1张

UIToolbar是我们经常用的控件之一,例如:navigation bar 上面加一个UIToolbar ,或者 view 的底部加一个UIToolbar,或者在键盘的上面加一个UIToolbar等等。其实它用起来也很简单。

下面看看它怎么用:

我们先初始化一个:

[html] view plaincopy

self.itemToolbar= [[UIToolbar alloc] initWithFrame:CGRectMake(0,0, 320, 44)]//初始化

self.itemToolbar.tintColor=[UIColor blackColor]//设置颜色

[self.view addSubview:self.itemToolbar]// 添加到view

然后给它添加items,items,可以是自己的任意一个view,例如,uitextfield,uibutton,uiimageview,或者

UIBarButtonItem。

我们先自定义一组:

[html] view plaincopy

NSMutableArray * array = [[NSMutableArray alloc] initWithCapacity:0]

for (int i = 0i <3i++)

{

UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCamera

target:self

action:nil]

[array addObject:item]

}

UIButton * btn = [UIButton buttonWithType:UIButtonTypeRoundedRect]

btn.frame = CGRectMake(0, 0, 100, 40)

[btn setTitle:@"测试" forState:UIControlStateNormal]

UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithCustomView:btn]

[array addObject:item]

然后把我们自定义的 items 添加到uitoolbar上。

[html] view plaincopy

self.itemToolbar.items = array

效果如下:

我们也可以随时改变它的items, 可以达到某些item的 隐藏和显示效果,例如我做了2个button, 功能就是 隐藏 “首页” button

点击“变换”,效果

点击“变换2”,效果

代码如下:

点击“变换”,代码

[html] view plaincopy

-(void)chageItem{

UIBarButtonItem * item0 = [[UIBarButtonItem alloc] initWithTitle:@"上一页" style:UIBarButtonItemStyleDone target:self action:nil]

UIBarButtonItem * item1 = [[UIBarButtonItem alloc] initWithTitle:@"首页" style:UIBarButtonItemStyleDone target:self action:nil]

UIBarButtonItem * item2 = [[UIBarButtonItem alloc] initWithTitle:@"下一页" style:UIBarButtonItemStyleDone target:self action:nil]

UIBarButtonItem * spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil]

[self.itemToolbar setItems:[NSArray arrayWithObjects:item0, spaceItem, item1, spaceItem, item2, nil] animated:YES]

}

点击“变换2”,代码

[html] view plaincopy

-(void)chageItem1{

UIBarButtonItem * item0 = [[UIBarButtonItem alloc] initWithTitle:@"上一页" style:UIBarButtonItemStyleDone target:self action:nil]

UIBarButtonItem * item2 = [[UIBarButtonItem alloc] initWithTitle:@"下一页" style:UIBarButtonItemStyleDone target:self action:nil]

UIBarButtonItem * spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil]

[self.itemToolbar setItems:[NSArray arrayWithObjects:item0, spaceItem, spaceItem, item2, nil] animated:YES]

}

注意: 代码很简单就不用上传demo了,最后没有使用ARC的话,注意对象的Release。

Java Swing本身提供了现成的按钮控件JButton

创建一个新的按钮:JButton about = new JButton;

这个按钮该放到菜单区:toolBar.add(about)

要为按钮添加事件响应,需要使用about.addActionListener(this)来告诉程序监听按钮按下时的事件,ActionListener是一个程序接口。

public class KyodaiUI extends JFrame implements ActionListener {...}实现ActionListener接口是为了告诉程序我要进行事件处理了。

最后我们得添加响应事件的代码:

public void actionPerformed(ActionEvent e) {

if (e.getSource() == about) {


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11852243.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存