我正在使用BMXSwitch来实现自定义UISlider,希望最终看起来像这样:
动画与默认的UISwitch完全相同,旋钮移动,同时拉动整个视图,并在另一侧放置,另一个选项可见。
然而,使用该库(以及包含的示例),我可以得到的最接近的是:
Here's a download link to my project if it would help.
以下是我自定义的代码:
- (void)viewDidLoad
{
[super viewDidLoad];
[_switch1 setCanvasImage: [UIImage imageNamed: @"canvas-custom"]];
[_switch1 setMaskImage: [UIImage imageNamed: @"mask-custom"]];
[_switch1 setKnobImage: [UIImage imageNamed: @"slider-knob-custom"] forState: UIControlStateNormal];
[_switch1 setKnobImage: [UIImage imageNamed: @"slider-knob-custom"] forState: UIControlStateHighlighted];
[_switch1 setKnobImage: [UIImage imageNamed: @"slider-knob-custom"] forState: UIControlStateDisabled];
[_switch1 setContentImage: [UIImage imageNamed: @"slider-background-custom"] forState: UIControlStateNormal];
[_switch1 setContentImage: [UIImage imageNamed: @"slider-background-custom"] forState: UIControlStateDisabled];
[self valueChanged: nil];
// _switch1.on = YES;
}
我不知道我做错了什么。我感觉这只是图像尺寸(图像包含在下载链接中),所以如果你能告诉我我需要的尺寸,或者我需要做些什么来解决这个问题,我真的很感激帮助,这让我非常难过。
答案 0 :(得分:1)
你的问题在.xib中。您已经定义了一个具有大框架的BMXSwitch。开关的框架必须等于按钮的大小,不再多了。