我正在使用UIStackView
,我正在努力使按钮成为圆形。我的前四个按钮具有用户定义的运行时属性:
layer.cornerRadius Number 10
layer.masksToBounds Boolean true
答案 0 :(得分:0)
如果您不反对使用图片,则可以创建一个您需要的尺寸的圆形图像。然后,假设它是UIButton,您可以将其添加为backgroundImage。
<强>故事板强> Xcode Screenshot
Swift 3
let circle = UIImage(named: "circle")
button.setBackgroundImage(circle, for: UIControlState.normal)
答案 1 :(得分:0)
我不知道为什么尝试使用用户定义的运行时属性不起作用;这是一种合法的技术,我已经习惯了。
那就是说,这是另一种方法:使用UIButton子类。定义子类以在其初始化程序中设置这些值(此处,@RunWith(SpringJUnit4ClassRunner.class)
public class TestA {
private Object state;
@Test
public void a() {
stateObjectA();
doSomethingWithState();
assertion();
}
@Test
public void b() {
stateObjectB();
doSomethingWithState();
assertion();
}
private void stateObjectA() {
// do some mocking and setup state
}
private void stateObjectB() {
// do some mocking and setup state
}
private void doSomethingWithState() {
// use the state object and feed into the testing method
}
}
是您需要实现的)。然后,在故事板中,使用Identity检查器创建此子类的这些按钮实例。
这实际上是一种更好的方法,因为它在一个位置封装了按钮共有的 all 。必须单独为四个按钮定义相同的属性总是一个糟糕的气味!