我使用Page view controller创建了5个视图。每个视图有4个按钮。当我单击任何按钮时,该按钮的标记将添加到数组中。现在,情况是......我打开了视图1 ..我点击了一个按钮......按钮的标签被添加到数组中。当我在同一视图中单击另一个按钮时,此按钮的标记也会添加到数组中。任务是从数组中删除以前单击的按钮标记,只有最新的标记应该保留。有帮助吗? 谢谢
答案 0 :(得分:2)
我建议您使用字典而不是数组。这样,您就可以轻松替换与特定密钥相关的对象。
[dictionary setObject:object key:somekey];
答案 1 :(得分:0)
最好将标记值保存在NSMutableSet对象中,这样可以帮助您避免重复。
你直接将按钮对象添加到NSMutableSet并检查NSMutableSet中的按钮是否可用从NSMutableSet中删除按钮,否则将其添加到NSMutableSet
NSMutableSet *set;
[set addObject:senderButton];
if([set containsObject:senderButton]) {
//set contains button remove that button
} else {
// set doesn't contains button add it
}
答案 2 :(得分:0)
最初在null
中添加NSMutableDictionary
对象,以检查是否点击了按钮
//number depends on numbers of view in page view controller
for(int i=0; i<[yourPageViewController.viewControllers; i++)
[yourMutDictionary setObject:[NSNull null] forKey:[NSString stringWithFormat:@"%d",i]];
UIButton's
click
event
将包含以下代码行
-(IBAction)btnClickedAction:(id)sender
{
UIButton *btnClicked = (UIButton *)sender;
NSUInteger index = yourPageViewController.pageControl.currentPage
[yourMutDictionary setObject:[NSString stringWithFormat:@"%d",btnClicked.tag] forKey:[NSString stringWithFormat:@"%i",index]];
}