我有一个带有四个方形按钮的UIView控制器,我已经用边框将它们设置为圆形。它在iPhone 8和iPhone X上完美运行,但在iPhone SE和iPhone 8 Plus中,UIButton不再是圆形。我已将UIButtons设置为方形,并将该比例与自动布局保持一致,但它似乎无法正常工作。
在我的 ViewController.Swift 中,我已将四个UIButtons链接起来,然后我应用了相同的代码,如下所示:
first
void doPrint(Node printPane) {
PrinterJob job = PrinterJob.createPrinterJob();
if (job != null && job.showPageSetupDialog(printPane.getScene().getWindow())) {
job.printPage(printPane);
job.endJob();
}
}
}
second
boolean doPrint(Node printPane) {
PrinterJob job = PrinterJob.createPrinterJob();
if (job == null) {
return false;
}
if (!job.printPage(printPane)) {
return false;
}
return job.endJob();
}
在这里,您可以看到iPhone SE和iPhone 8 Plus上的行为。 iPhone 8和iPhone X很好。
自动布局限制:
答案 0 :(得分:3)
在viewcontroller的viewDidLayoutSubviews方法中设置按钮cornerRadius
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
// Edit it to round
topLeftButtonImage.layer.cornerRadius = topLeftButtonImage.bounds.size.height / 2
topLeftButtonImage.clipsToBounds = true
// Add border
topLeftButtonImage.layer.borderColor = UIColor.white.cgColor // Button border color
topLeftButtonImage.layer.borderWidth = 4 // Button border width
}