Iphone 可以在scrollview上制作单选按钮吗

Iphone 可以在scrollview上制作单选按钮吗,iphone,objective-c,ios,uiscrollview,Iphone,Objective C,Ios,Uiscrollview,我想在UIScrollView上制作单选按钮。当我尝试在UIView上运行时,它工作得很好,但当我尝试在UIScrollView上运行时,相同的代码将用作复选框。那么有没有办法在UIScrollView上制作单选按钮呢 我将此代码用于scrollview for (int i = 0; i < 5; i++) { UIButton *but = [UIButton buttonWithType:UIButtonTypeCustom]; [but setIma

我想在
UIScrollView
上制作单选按钮。当我尝试在
UIView
上运行时,它工作得很好,但当我尝试在
UIScrollView
上运行时,相同的代码将用作复选框。那么有没有办法在
UIScrollView
上制作单选按钮呢

我将此代码用于scrollview

for (int i = 0; i < 5; i++) {
        UIButton *but = [UIButton buttonWithType:UIButtonTypeCustom];
        [but setImage:[UIImage imageNamed:@"emptycheckbox.png"] forState:UIControlStateNormal];
        [but setImage:[UIImage imageNamed:@"checkbox.png"] forState:UIControlStateSelected];
        [but setFrame:CGRectMake(0, 0, 40, 33)];
        [but setCenter:CGPointMake( 50,  i*40+20 )];
        [but addTarget:self action:@selector(checkboxButton:) forControlEvents:UIControlEventTouchUpInside];
        [scrollView addSubview:but];

        scrollView.showsVerticalScrollIndicator = NO;
        [scrollView setContentSize:CGSizeMake(200,1000)];
    }


- (IBAction)checkboxButton:(UIButton *)button{

    for (UIButton *but in [self.view subviews]) {
        if ([but isKindOfClass:[UIButton class]] && ![but isEqual:button]) {
            [but setSelected:NO];
        }
    }
    if (!button.selected) {
        button.selected = !button.selected;
    }
}

对于scrollview,应为:

for (UIButton *but in [scrollview subviews]) {...

NOT: for (UIButton *but in [self.view subviews]) {...

我无法理解您对循环的
[self.view子视图]
做了什么。
checkboxButton:
中的按钮参数是需要切换其状态的按钮。只需
button.selected=!按钮。选定的
应该足够了。@Akshay:这是因为您需要切换所有按钮并为单个按钮设置状态,这样就可以显示一个单选按钮的外观,其中只选择了一个按钮times@shivangi:我认为您的按钮是滚动视图的子视图。迭代循环以获取scrollview,然后获取scrollview的子视图,这些子视图属于UIButtons类型。如果你没有得到它,然后留下评论,我会添加更多的信息。啊!明白了@Shivangi:“那么相同的代码将作为复选框工作”是什么意思?Akshay:这意味着另一个按钮不会像单选按钮那样被取消选中,单击其他按钮会使其行为更像复选框,从而切换状态。
for (UIButton *but in [scrollview subviews]) {...

NOT: for (UIButton *but in [self.view subviews]) {...