У меня есть дополнительный вопрос к моему предыдущему вопросу ( Как сделать так, чтобы при использовании Shiny и Shinydashboard размер значков был одинаковым? ).
Теперь я хочу добавить радиокнопку на боковой панели, а также добавить значок в конце метки. Этот значок будет ссылкой на всплывающее окно.
Я могу добавить значок и успешно изменить размер значка, как в моем предыдущем сообщении, за исключением того, что значок находится не в той же строке, что и метка переключателя. Можно ли сделать их в одной строке?
Код:
# Load the packages
library(shiny)
library(shinydashboard)
library(shinyalert)
# User Interface
ui <- dashboardPage(
header = dashboardHeader(title = ""),
sidebar = dashboardSidebar(
sidebarMenu(
menuItem(
text = "Example",
tabName = "tab1"
),
radioButtons(inputId = "radio", choices = c("Yes", "No"),
label = HTML("A Radio Button", "<font size='3'>",
as.character(actionLink(inputId = "info4",
label = "",
icon = icon("info"))), "</font>"))
)
),
body = dashboardBody(
# A call to use the shinyalert package
useShinyalert(),
tabItems(
tabItem(
tabName = "tab1",
h2(HTML("This is a title", "<font size='3'>",
as.character(actionLink(inputId = "info1",
label = "",
icon = icon("info"))), "</font>")),
fluidRow(
box(
title = HTML("This is the title of the box", "<font size='3'>",
as.character(actionLink(inputId = "info2",
label = "",
icon = icon("info"))), "</font>"),
status = "primary", solidHeader = TRUE,
selectInput(inputId = "Select",
label = HTML("This is the title of the selectInput", "<font size='3'>", as.character(actionLink(inputId = "info3",
label = "",
icon = icon("info"))), "</font>"
),
choices = 1:3)
)
)
)
)
)
)
server <- function(input, output, session){
observeEvent(input$info1, {
shinyalert(text = "Info 1", type = "info")
})
observeEvent(input$info2, {
shinyalert(text = "Info 2", type = "info")
})
observeEvent(input$info3, {
shinyalert(text = "Info 3", type = "info")
})
observeEvent(input$info4, {
shinyalert(text = "Info 4", type = "info")
})
}
# Run the app
shinyApp(ui, server)