【问题标题】:height of progress view xcode进度视图xcode的高度
【发布时间】:2012-07-02 23:02:52
【问题描述】:

有没有办法在 Xcode 中更改进度视图栏的高度?

我使用的是 Xcode 4.3,需要一个垂直进度条。我旋转了条形,但现在无法更改高度并显示为圆形。

还有一种更有效的旋转进度条的方法会有所帮助。

谢谢!

【问题讨论】:

标签: xcode uiprogressview rotatetransform


【解决方案1】:

有人报告说手动更改框架会起作用:

[self.progressView setFrame:CGRectMake(0, 0, 300, 25)];

而其他人报告说 CGAffineTransform() 也可以工作:

[self.progressView setTransform:CGAffineTransformMakeScale(1.0, 3.0)];

至于旋转,使用:

#define DEGREES_TO_RADIANS(angle) ((angle) / 180.0 * M_PI)
[self.progressView setTransform:CGAffineTransformMakeRotation(DEGREES_TO_RADIANS(angle))];

【讨论】:

  • 任何你想改变其大小的地方。
  • .m 文件中的任何位置?它说'self'是一个未声明的标识符,我该如何解决?
  • setFrame 在我的情况下不起作用。我想调整高度。我正在使用 iOS7。
【解决方案2】:

这里已经回答了这个问题How to increase height of UIProgressView

@implementation UIProgressView (customView)

-(CGSize)sizeThatFits:(CGSize)size {
    CGSize newSize = CGSizeMake(self.frame.size.width,9);
    return newSize;
}
@end

【讨论】:

    【解决方案3】:

    这里的代码对你有帮助。你想设置 uislider 高度改变 CGAffineTransformMakeScale 高度。

        UISlider *slider_progres = [[UIProgressView alloc]initWithFrame:CGRectMake(0, 56, 320, 15)];
    
        CGAffineTransform transform = CGAffineTransformMakeScale(1.0f, 3.0f);
    
        slider_progres.transform = transform;
    

    【讨论】:

      【解决方案4】:

      我刚刚在 iOS 7 中遇到了类似的问题。

      如果您使用[UIProgressView appearance] 设置进度和跟踪图像,则从 Xib 文件加载的进度条的进度视图将正确显示。

      但是,如果您以编程方式创建 UIProgressView(通过appearance 设置图像后),将使用外观图像,但它的高度将被卡住并且“2”,进度条将被剪裁,甚至调用setFrame 获胜不要修复它。

      解决方法是直接在以编程方式创建的 UIProgressView 上以编程方式设置图像 - 而不是依赖外观设置。

      【讨论】:

        【解决方案5】:

        我想它会对你有所帮助。

        [self.progressView setTransform:CGAffineTransformMakeScale(1.0, 3.0)];
        

        【讨论】:

          【解决方案6】:

          对我来说,如果您从 UIProgressView 类继承。

          [self.progressView setTransform:CGAffineTransformMakeScale(1.0, 3.0)];
          

          例子:

              @implementation CustomProgressView
          
                  - (id)initWithCoder:(NSCoder *)aDecoder
                  {
                      self = [super initWithCoder:aDecoder];
                      if (self) {
                          [self setTransform:CGAffineTransformMakeScale(1.0, 3.0)];
          
                      }
                      return self;
                  }
              @end
          

          其他类:

          @property (weak, nonatomic) IBOutlet CustomProgressView *cProgressView;
          

          【讨论】:

            猜你喜欢
            • 2013-09-14
            • 2011-08-21
            • 1970-01-01
            • 2014-11-12
            • 2018-10-02
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-08-27
            相关资源
            最近更新 更多