无论分配时我给它的大小,它只显示固定大小。是否有可能增加它?
代码:
activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:
CGRectMake(142.00, 212.00, 80.0, 80.0)];
[[self view] addSubview:activityIndicator];
[activityIndicator sizeToFit];
activityIndicator.autoresizingMask = (UIViewAutoresizingFlexibleLeftMargin |
UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin |
UIViewAutoresizingFlexibleBottomMargin);
activityIndicator.hidesWhenStopped = YES;
activityIndicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
答案 0 :(得分:160)
以下内容将创建一个15px宽的活动指标:
#import <QuartzCore/QuartzCore.h>
...
UIActivityIndicatorView *activityIndicator = [[[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray] autorelease];
activityIndicator.transform = CGAffineTransformMakeScale(0.75, 0.75);
[self addSubview:activityIndicator];
虽然我理解TechZen答案的情绪,但我不认为将UIActivityIndicator的大小调整相对较小的数量实际上违反了Apple的标准化界面惯用语 - 无论活动指标是20px还是15px都不会改变用户对正在发生的事情的解释。
答案 1 :(得分:47)
尺寸由款式决定。它是一个标准化的界面元素,因此API不喜欢它。
但是,您可能可以对其进行缩放转换。但是,不确定这会如何影响它。
从UI设计的角度来看,通常最好只留下这些常见的标准化元素。已经教导用户某些元素以特定大小出现并且它们意味着特定的事物。改变标准外观会改变界面语法并使用户感到困惑。
答案 2 :(得分:46)
Swift 3.0&amp; Swift 4.0
self.activityIndi.transform = CGAffineTransform(scaleX: 3, y: 3)
答案 3 :(得分:42)
可以调整UIActivityIndicator的大小。
$.ajax({
//web service pubblico di prova
url: "*web service*",
type: 'POST',
dataType: "xml",
processData: false,
contentType: "text/xml",
data: soapMessage,
success: function(soapResponse){
var xhttp = new XMLHttpRequest();
var ss= $(soapResponse);
alert($(soapResponse).text());
var result=$(soapResponse).find("SoggettiTemplate").text();
$('SoggettiTemplate',ss.text()).each(function(i){
var ID= $(this).attr("ID");
var ID= $(this).attr("ID");
//getting the id parameter
})
},
error: function (request, status, error) {
alert(request);
alert(status);
alert(error);
}
});
原始尺寸为1.0f。现在你相应地增加和减小尺寸。
答案 4 :(得分:9)
var activityIndicator = UIActivityIndicatorView()
activityIndicator = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyle.gray)
activityIndicator.frame = CGRect(x: 0, y: 0, width: 50, height: 50)
let transform: CGAffineTransform = CGAffineTransform(scaleX: 1.5, y: 1.5)
activityIndicator.transform = transform
activityIndicator.center = self.view.center
activityIndicator.startAnimating()
self.view.addSubview(activityIndicator)
答案 5 :(得分:3)
这是一个适用于 Swift 3.0 &amp;检查以防止0缩放(或您想要禁止的任何值):
extension UIActivityIndicatorView {
func scale(factor: CGFloat) {
guard factor > 0.0 else { return }
transform = CGAffineTransform(scaleX: factor, y: factor)
}
}
将其称为缩放至40分(2x):
activityIndicatorView.scale(factor: 2.0)
答案 6 :(得分:2)
还有很多其他有用的“CGAffineTransform”技巧可以玩。有关详细信息,请参阅Apple Developer Library参考:
祝你好运!答案 7 :(得分:1)
您可以做的最好是使用whiteLarge
样式。
let i = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyle.whiteLarge)
。
答案 8 :(得分:1)
activityIndicator.transform = CGAffineTransform(scaleX:1.75,y:1.75);
这对我改变指标的大小很有帮助。