【问题标题】:How can I create and display a UISlider programmatically in iOS?如何在 iOS 中以编程方式创建和显示 UISlider?
【发布时间】:2016-11-08 12:27:52
【问题描述】:

我在 Apple 文档中找到了下面的代码并将其添加到我的 viewDidLoad 方法中,但是当我运行代码时滑块没有出现。

CGRect frame = CGRectMake(0.0, 0.0, 200.0, 10.0);
UISlider *slider = [[UISlider alloc] initWithFrame:frame];
[slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
[slider setBackgroundColor:[UIColor clearColor]];
slider.minimumValue = 0.0;
slider.maximumValue = 50.0;
slider.continuous = YES;
slider.value = 25.0;

【问题讨论】:

标签: iphone ios4


【解决方案1】:

您需要将滑块添加到视图层次结构中。添加[self.view addSubview:slider];,它应该可以工作。

【讨论】:

    【解决方案2】:

    试试这个代码:

    创建一个新滑块

    -(IBAction)mySlider
    { 
        CGRect frame = CGRectMake(0.0, 0.0, 200.0, 10.0);
        UISlider *slider = [[UISlider alloc] initWithFrame:frame];
        [slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
        [slider setBackgroundColor:[UIColor clearColor]];
        slider.minimumValue = 0.0;
        slider.maximumValue = 50.0;
        slider.continuous = YES;
        slider.value = 25.0;
        [self.view addSubview:slider];
    }
    

    滑块操作

    -(void)sliderAction:(id)sender
    {
        UISlider *slider = (UISlider*)sender;
        float value = slider.value;
        //-- Do further actions
    }
    

    【讨论】:

    • 要访问滑块值,请使用名为“value”的 UISlider 属性。请编辑您的答案。它崩溃了。
    【解决方案3】:

    通过 [self.view addSubview:slider] 添加到视图 如前所述 - 是必不可少的。

    在以下位置对我不可见: CGRect 框架 = CGRectMake(0.0, 0.0, 200.0, 10.0);

    你应该把它往下放一点,然后把它从左边距弄下来。

    也许? CGRect frame = CGRectMake(5.0, 10.0, 200.0, 10.0);

    对于 ios 6 及更高版本,您也应该将其添加到确实加载的视图中 (所以你可以看到它——即使你降低了框架)

      if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1)
      {
          self.edgesForExtendedLayout=NO;
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-04
      • 1970-01-01
      • 2011-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-29
      相关资源
      最近更新 更多