Get StartedFoundationsComponentsPatternsRulesDevelopAI & ToolsUpdates

Radio Group

여러 옵션 중 하나를 선택할 수 있도록 할 때 사용하는 컴포넌트예요.

설치

pnpm dlx shadcn@latest add https://rebar.conmarket-landing.workers.dev/r/radio-group.json

Anatomy

Radio는 Radiomark와 Label로 구성돼요. Radiomark는 개별 컴포넌트(Radiomark)로 제공되어서 자유롭게 조합해서 사용할 수 있어요. 여러 Radio는 RadioGroup 으로 묶고, 그 안에서 하나만 선택돼요.

요소컴포넌트설명
GroupRadioGroup선택지를 묶고 선택된 값을 관리해요.
RootRadioGroupItem (label)Label을 포함한 전체 영역이 누르는 영역이에요.
RadiomarkRadiomark선택 상태를 보여주는 원형 표시예요. 눌리면 살짝 줄어들어요.
Labellabel propRadiomark 옆에 보여주는 텍스트예요.

Properties

Size, Weight

Radio는 Medium, Large 사이즈로 제공돼요. 강조해야 하는 경우 등에 따라서 Weight(Regular, Bold)를 조정해서 활용할 수 있어요. RadioGroup 에 지정하면 안쪽 항목의 기본값이 돼요.

Tone

Radio는 Brand, Neutral 두 가지 Tone을 가져요. 디자인 가이드에서는 Neutral을 기본으로 사용하는 것을 권장해요.

State

Radio는 선택(Selected), 미선택(Unselected) 상태를 가지며, 각각의 상태는 사용자의 상호작용에 따라 활성화(Enabled), 비활성화(Disabled), 눌림(Pressed) 상태로 조합되어 표현돼요.

Long Label

라벨이 길어지면 여러 줄로 줄바꿈되고, Radiomark는 첫 줄에 맞춰 정렬돼요.

Radiomark

Radiomark 는 라벨 없이 쓰는 라디오 표시예요. RadioGroup 안에서 List처럼 다른 요소와 조합할 때 사용해요.

Guidelines

Radio touch target

Radio는 Label을 포함한 영역이 Target으로 동작해요. List처럼 Radiomark를 조합해서 사용하는 경우 전체 Row가 Target 영역이 되어야 해요.

하나만 선택 가능할 때 사용하기

목록에서 하나의 옵션만 선택할 수 있는 경우 Radio를 사용해요.

Do· 단일 선택

N개 중 1개만 고르는 경우 Radio를 사용해요.

Don't· 다중 선택에 Radio

목록에서 여러 옵션을 선택할 수 있는 경우 Checkbox를 사용해요.

기본 선택 제공하기

Radio를 제공할 때는 사용자의 고민을 덜어주고 빠른 선택을 돕기 위해 가장 일반적인 선택지를 기본으로 제공하는 것을 권장해요. 권장되거나 빈번하게 사용되는 옵션을 기본으로 제공해요.

Do· 기본 선택 제공

가장 일반적인 선택지를 미리 선택해 둬요.

Don't· 아무것도 선택되지 않음

기본 선택이 없으면 사용자가 매번 고민해야 해요.

가로로 나열하지 않기

여러 Radio를 사용할 때는 수직으로 쌓아 올리는 것이 기본적인 정렬 방식이에요. 가로로 나열하면 레이블이 길어지거나 화면 너비가 좁아질 때 어떤 버튼에 해당하는지 혼동을 일으킬 수 있으므로 지양해요.

수평으로 배열해야 할 경우, 각 요소가 명확히 구분되도록 충분한 간격(Gap)을 확보해요.

Do· 세로로 나열

선택지를 세로로 쌓아 올려요.

Don't· 좁은 간격으로 가로 나열

간격이 좁으면 라벨이 어느 버튼에 속하는지 헷갈려요.

옵션 개수에 따라 적절한 컴포넌트 사용하기

사용자에게 명확하고 효율적인 선택 경험을 제공하기 위해, 선택해야 할 옵션의 개수는 컴포넌트를 결정하는 중요한 기준이 돼요.

Radio Group

선택지가 2개에서 6개 사이일 때 사용해요.

  • 사용자가 각 옵션의 차이를 명확히 비교하고 신중하게 선택해야 할 때 (예: 배송 방법 - 일반 배송 vs. 특급 배송)
  • 설정, 주문서, 설문조사 등 '서류' 형태의 폼일 때

Input Button

선택지가 6개 이상으로 많거나, 앞으로 더 늘어날 가능성이 있을 때 사용해요.

  • 평소에는 선택된 값만 보여줘서 화면의 공간 효율성을 높이고 UI를 간결하게 유지해요. 버튼을 누르면 Bottom Sheet가 올라와 전체 옵션 목록을 보여주므로, 많은 수의 옵션도 효과적으로 처리할 수 있어요.
  • 사용자가 이미 어떤 것을 선택할지 예측하고 있을 때
  • 화면이 복잡하거나 다른 중요한 정보가 많을 때
  • 출생연도, 국가 등 많은 옵션이 나타나고, 옵션이 추가될 수 있을 때

Radio vs. Checkbox vs. Chip Group

Radio와 Checkbox, Chip Group의 선택 기준은 다음과 같아요.

RadioCheckboxChip Group
핵심 규칙단일 선택 (N개 중 1개) / 문장 등 긴 내용 표시 가능다중 선택 (N개 중 N개) / 문장 등 긴 내용 표시 가능둘 다 가능 (단일 또는 다중 선택) / 단어처럼 짧은 내용 표시 가능
주요 목적폼(Form) 데이터의 선택 및 제출여러 항목의 포함/제외 및 동의콘텐츠의 필터링 또는 속성 부여
레이아웃수직으로 쌓이며 좀 더 명료하게 행동을 유도할 수 있음수직으로 쌓이며 좀 더 명료하게 행동을 유도할 수 있음수평으로 쌓이며 컴팩트하게 화면을 구성할 수 있음
사용자의 인식하나의 정답/답변을 고른다해당되는 것에 모두 체크한다특징을 고르거나 분류한다
최적 옵션 개수2-6개제한 없음 (권장: 2-10개)제한 없음 (권장: 2-10개)
대표 사용 예시배송 방법 선택, 만족도 조사 등이용약관 동의, 수신 항목 선택 등사이즈/색상 선택, 관심사 태그, 검색 필터 등
Do· 여러 개를 고를 땐 Checkbox

해당되는 항목을 모두 고르는 경우 Checkbox를 사용해요.

Do· 하나만 고를 땐 Radio

하나의 답을 고르는 경우 Radio를 사용해요.

Props

RadioGroup

Prop

Type

RadioGroupItem

Prop

Type

Radiomark

Prop

Type

On this page