2

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

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

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

谢谢!

4

6 回答 6

14

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

[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))];
于 2012-07-02T23:06:01.583 回答
2

这个问题已经在这里回答了如何增加 UIProgressView 的高度

@implementation UIProgressView (customView)

-(CGSize)sizeThatFits:(CGSize)size {
    CGSize newSize = CGSizeMake(self.frame.size.width,9);
    return newSize;
}
@end
于 2014-01-10T11:36:51.520 回答
1

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

    UISlider *slider_progres = [[UIProgressView alloc]initWithFrame:CGRectMake(0, 56, 320, 15)];

    CGAffineTransform transform = CGAffineTransformMakeScale(1.0f, 3.0f);

    slider_progres.transform = transform;
于 2014-03-04T07:11:40.680 回答
0

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

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

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

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

于 2013-10-11T02:41:28.487 回答
0

我想它会对你有所帮助。

[self.progressView setTransform:CGAffineTransformMakeScale(1.0, 3.0)];
于 2014-07-23T06:39:06.313 回答
0

对我来说,只有从 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;
于 2014-08-23T02:06:53.240 回答