Pretty Switch Input
A toggle switch to replace checkbox
prettySwitch( inputId, label, value = FALSE, status = "default", slim = FALSE, fill = FALSE, bigger = FALSE, inline = FALSE, width = NULL )
inputId |
The |
label |
Display label for the control, or |
value |
Initial value ( |
status |
Add a class to the switch, you can use Bootstrap status like 'info', 'primary', 'danger', 'warning' or 'success'. |
slim |
Change the style of the switch ( |
fill |
Change the style of the switch ( |
bigger |
Scale the switch a bit bigger ( |
inline |
Display the input inline, if you want to place switch next to each other. |
width |
The width of the input, e.g. |
TRUE
or FALSE
server-side.
Appearance is better in a browser such as Chrome than in RStudio Viewer
See updatePrettySwitch
to update the value server-side.
library(shiny) library(shinyWidgets) ui <- fluidPage( tags$h1("Pretty switches"), br(), fluidRow( column( width = 4, prettySwitch(inputId = "switch1", label = "Default:"), verbatimTextOutput(outputId = "res1"), br(), prettySwitch( inputId = "switch4", label = "Fill switch with status:", fill = TRUE, status = "primary" ), verbatimTextOutput(outputId = "res4") ), column( width = 4, prettySwitch( inputId = "switch2", label = "Danger status:", status = "danger" ), verbatimTextOutput(outputId = "res2") ), column( width = 4, prettySwitch( inputId = "switch3", label = "Slim switch:", slim = TRUE ), verbatimTextOutput(outputId = "res3") ) ) ) server <- function(input, output, session) { output$res1 <- renderPrint(input$switch1) output$res2 <- renderPrint(input$switch2) output$res3 <- renderPrint(input$switch3) output$res4 <- renderPrint(input$switch4) } if (interactive()) shinyApp(ui, server)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.