我想将按钮调整为正方形,这是我的代码:
let button = UIButton()
button.backgroundColor = UIColor.red
button.translatesAutoresizingMaskIntoConstraints = false
//method one
//button.widthAnchor.constraint(equalToConstant:44.0).isActive = true
//button.heightAnchor.constraint(equalToConstant: 44.0).isActive = true
//method two
button.frame.size = CGSize(width: 20.0, height: 20.0)
button.addTarget(self, action: #selector(ratingButtonTapped(button: )), for: .touchUpInside)
addArrangedSubview(button)
我已经尝试过这两种方法,但是没有一种方法似乎能够很好地解决方法一中出现错误并且方法二中没有显示任何错误。当我运行代码时,按钮在容器中完成。这有什么不对?
答案 0 :(得分:5)
使用addSubview()而不是addArrangedSubview()。
我在这里写的操场上有我在评论中发布的相同解决方案,以防有人遇到同样的问题:
Swift 3.0:
ShinyUi <- fluidPage(
# Application title
titlePanel("title"),
sidebarLayout(
sidebarPanel(
... inputs ...
),
mainPanel(
plotlyOutput("distPlot", height = 'auto', width = 'auto')
)
))
ShinyServer <- function(input, output, session) {
output$distPlot <- renderPlotly({
p <- ggplot(dataShow, aes(x=dataShow$X, y=dataShow$Y)) +
geom_point(shape=1, alpha = 0.5, color = "grey50")
ggplotly(p)
})
}
# Run the application
shinyApp(ui = ShinyUi, server = ShinyServer)
答案 1 :(得分:-2)
为什么不创建按钮并使用给定的大小初始化它?
let btn = UIButton(frame: CGRect(x: 0, y: 0, width: 20, height: 20))
然后相应地更改x和y