每个按钮都会出现ActionSheet

时间:2015-02-11 18:10:16

标签: ios uiactionsheet

我有一个方法会抛出一个由数组填充的actionSheet。

问题在于,只要我将该方法放入发件人中以获得1个按钮,就会触发每个单个按钮按下。

我只希望它显示一个按钮(btnPortfolio)。

以下是我的按钮的代码:

 - (IBAction)btnPortfolio:(id)sender {
    [self populatePortfolioList];
 }

- (IBAction)btnAdd:(id)sender {

}

- (IBAction)btnRefresh:(id)sender {
}

这是我的方法:

-(void)populatePortfolioList{
    UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Choose your option"
                                                             delegate:self
                                                    cancelButtonTitle:nil
                                               destructiveButtonTitle:nil
                                                    otherButtonTitles:nil];
    for (NSString *title in portfolio_list) {
        [actionSheet addButtonWithTitle:title];
    }
    actionSheet.cancelButtonIndex = [actionSheet addButtonWithTitle:@"Cancel"];
    [actionSheet showInView:self.view];
}

1 个答案:

答案 0 :(得分:1)

因为你正在使用IBActions,我假设你通过ctrl +从按钮拖动到代码中以某种方式创建了方法?那是这样吗?您可能有可能意外地使用方法btnPortfolio连接了多个按钮,这会导致在按下按钮时调用populatePortfolioList