gpt4 book ai didi

iphone - UIToolBar - 禁用按钮

转载 作者:行者123 更新时间:2023-12-03 18:28:28 28 4
gpt4 key购买 nike

在我的应用程序中,我有一个工具栏,在某个时刻我想禁用或启用一些按钮。最简单的方法是什么?如何访问 UIToolbar 的 items 属性?

这是我的代码:

-(void)addToolbar {
NSMutableArray *buttons = [[NSMutableArray alloc] init];

//Define space
UIBarButtonItem *flexibleSpaceItem;
flexibleSpaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemFlexibleSpace target:nil action:NULL];

//Add "new" button
UIBarButtonItem *newButton = [[UIBarButtonItem alloc]
initWithTitle:@"New" style:UIBarButtonItemStyleBordered target:self action:@selector(new_clicked)];
[buttons addObject:newButton];
[newButton release];

//Add space
[buttons addObject:flexibleSpaceItem];

//Add "make active" button
UIBarButtonItem *activeButton = [[UIBarButtonItem alloc]
initWithTitle:@"Make Active" style:UIBarButtonItemStyleBordered target:self action:@selector(make_active_clicked)];
[buttons addObject:activeButton];
[activeButton release];

[buttons addObject:flexibleSpaceItem];

//Add "edit" button
UIBarButtonItem *editButton = [[UIBarButtonItem alloc]
initWithTitle:@"Edit" style:UIBarButtonItemStyleBordered target:self action:@selector(edit_clicked)];
[buttons addObject:editButton];
[editButton release];

[flexibleSpaceItem release];

[toolBar setItems:buttons];
[buttons release];
}

提前谢谢您。

最佳答案

最简单的方法是将 UIBarButtonItem 的引用保存为实例变量。

# header file
UIBarButtonItem *editButton;

然后你的代码就变成了

# .m file
editButton = [[UIBarButtonItem alloc]
initWithTitle:@"Edit"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(edit_clicked)];
[buttons addObject:editbutton];

现在,在任何实例方法中的任何位置,禁用按钮都非常简单:

editButton.enabled = NO;

也不要立即释放它,因为此类现在拥有按钮对象。因此,在 dealloc 方法中release它。

关于iphone - UIToolBar - 禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/768918/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com