2

我有一个subview几乎是我的主视图的一半,我的主视图也有一个UISlider。我的silder的值从 0 到 10。我想用 . 添加一些UIButtons值 4 然后我想从 Subview 中删除以前的 s 并将一些新的 s 添加到 Subview 。SubviewUISilderUIButtonUIButtonUIButton

4

2 回答 2

0

注意:代码未经测试。

  1. 启动 10UIButton并将它们添加到视图中,将它们设置为隐藏:

    for (int x = 0; x < 10; x++) {
        UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(50, x * 100, 100, 50)];
        [btn setText:[NSString stringWithFormat:@"Button %d",(x + 1)]];
        [btn setHidden:true];
        [self.view addObject:btn];
        [btn release];
    }
    
  2. 使用滑块更改值方法来隐藏/显示按钮,如下所示:

        -(IBAction) sliderChanged:(id) sender{
              UISlider *slider = (UISlider *) sender;
              for (int x = 0; x < slider.value; x++) {
                   UIButton *btn = (UIButton *)[savedBtn objectAtIndex:x];
                   [btn setHidden:false];
              }
        }
    

更新

要使用 a UIScrollView,您必须将UIButtons 添加到 scrollView 而不是视图,如下所示:

    UIScrollView *sView = [[UIScrollView alloc] initWithFrame:CGRectMake(10,10,200,200)];
    [sView setDelegate:self];
    for (int x = 0; x < 10; x++) {
        UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(50, x * 100, 100, 50)];
        [btn setText:[NSString stringWithFormat:@"Button %d",(x + 1)]];
        [btn setHidden:true];
        [sView addSubview:btn];
        [btn release];
    }

然后将scrollView添加到视图中:

     [self.view addSubview:sView];

希望这可以帮到你。

于 2012-09-07T12:48:45.680 回答
0

首先,您将选择器方法添加到您的UISlider,

[customSlider addTarget:selfaction:@selector(sliderEnd:)forControlEvents:UIControlEventTouchUpInside];

现在应该在Mainview项目的类中定义选择器方法。

现在,在选择器方法中,您确定函数中的滑块值,并且根据其值,您可以向另一个视图添加或删除或添加按钮。您可以在将所有按钮添加到视图时存储对它们的引用,然后superview在滑块值建议这样做时将其删除。

希望能帮助到你。

于 2012-09-07T12:49:00.823 回答