我想将SFGaugeView添加到我的应用中。
当我在故事板中创建UIView时,将类更改为SFGaugeView并连接Outlet,而不是一切都很好。但是......当我以编程方式(这是我需要的)时,它不起作用。
这是我的进步:
#import SFGaugeView.h
然后,我在.h文件中设置了属性(@property (nonatomic) IBOutlet SFGaugeView *middleTachometer;
)
在.m文件中,我有这段代码:
self.middleTachometer = [[SFGaugeView alloc] initWithFrame:CGRectMake(0, 0, 320, 504)];
self.middleTachometer.bgColor = [UIColor colorWithRed:102/255.0 green:175/255.0 blue:102/255.0 alpha:1];
self.middleTachometer.needleColor = [UIColor colorWithRed:27/255.0 green:103/255.0 blue:107/255.0 alpha:1];
self.middleTachometer.maxlevel = 10;
self.middleTachometer.minImage = @"minImage";
self.middleTachometer.maxImage = @"maxImage";
SFGaugeView *viewC = [[SFGaugeView alloc] initWithFrame:CGRectMake(0, 0, 320, 504)];
[viewC addSubview:self.middleTachometer];
[self.view addSubview:viewC];
结果是Gauge在视图中,但它不与手势交互(和故事板,它确实)。请问哪里有问题?谢谢!
答案 0 :(得分:2)
为什么你有两个SFGaugeViews?我想改变你的代码是这样的:
self.middleTachometer = [[SFGaugeView alloc] initWithFrame:CGRectMake(0, 0, 320, 504)];
self.middleTachometer.bgColor = [UIColor colorWithRed:102/255.0 green:175/255.0 blue:102/255.0 alpha:1];
self.middleTachometer.needleColor = [UIColor colorWithRed:27/255.0 green:103/255.0 blue:107/255.0 alpha:1];
self.middleTachometer.maxlevel = 10;
self.middleTachometer.minImage = @"minImage";
self.middleTachometer.maxImage = @"maxImage";
[self.view addSubview:self.middleTachometer];
应该做的伎俩!
编辑:
好吧,让我感兴趣 - 我重新创建了一个测试项目,这个问题在SFGaugeView类中是实际的 - 当手动添加它时,永远不会调用setup
方法。
因此,您可以手动调用awakeFromNIB
方法或等待我的拉取请求(https://github.com/simpliflow/SFGaugeView/pull/1)合并进来!