Xcodeでプログレスビューバーの高さを変更する方法はありますか?
Xcode 4.3 を使用しており、垂直のプログレス バーが必要です。バーを回転させましたが、高さを変更できず、円として表示されます。
また、進行状況バーを回転させるより効果的な方法も役立ちます。
ありがとう!
Xcodeでプログレスビューバーの高さを変更する方法はありますか?
Xcode 4.3 を使用しており、垂直のプログレス バーが必要です。バーを回転させましたが、高さを変更できず、円として表示されます。
また、進行状況バーを回転させるより効果的な方法も役立ちます。
ありがとう!
フレームを手動で変更するとうまくいくと報告されている人もいます:
[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))];
この質問はすでにここで回答されていますUIProgressViewの高さを増やす方法
@implementation UIProgressView (customView)
-(CGSize)sizeThatFits:(CGSize)size {
CGSize newSize = CGSizeMake(self.frame.size.width,9);
return newSize;
}
@end
ここでコードが役立ちます。uislider の高さを設定したい CGAffineTransformMakeScale の高さを変更します。
UISlider *slider_progres = [[UIProgressView alloc]initWithFrame:CGRectMake(0, 56, 320, 15)];
CGAffineTransform transform = CGAffineTransformMakeScale(1.0f, 3.0f);
slider_progres.transform = transform;
私にとっては、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;