사용 편의성을 위한 Filter button입니다.
간단한 설정만으로 기본 스타일의 Filter button을 사용할 수 있으며,
내부적으로 CompositionLocal을 활용하여 관련 상태를 주입합니다.
WantedFilterButton(
text ="필터",
activeLabel ="3",
onClick ={/* 클릭 동작 */})
Parameters
이름
타입
설명
text
String
FilterButton에 표시될 텍스트입니다.
modifier
Modifier
Modifier를 통해 스타일을 조정할 수 있습니다.
activeLabel
String
FilterButton이 활성화되었을 때 표시할 라벨 텍스트입니다.
size
FilterButtonSize
FilterButton의 크기를 정의하는 enum 값입니다 (기본값: Small).
variant
FilterButtonVariant
FilterButton의 스타일입니다 (기본값: Solid).
isActive
Boolean
FilterButton의 활성화 상태입니다.
isEnable
Boolean
FilterButton의 사용 가능 상태입니다.
isExpend
Boolean
확장 가능 상태입니다 (아이콘 변경 목적).
interactionSource
MutableInteractionSource
사용자 인터랙션 처리를 위한 객체입니다.
onClick
(() -> Unit)?
클릭 시 호출되는 콜백 함수입니다.
Overload
기본 설정을 외부에서 주입할 수 있는 커스터마이징 버전의 Filter button입니다.
기본 스타일뿐만 아니라 텍스트 스타일, 색상 등 세부 속성을 설정할 수 있으며,
내부적으로 주어진 FilterButtonDefault 설정값을 기반으로 Filter button을 구성합니다.
WantedFilterButton(
text ="필터",
activeLabel ="3",
filterButtonDefault = customDefault,
onClick ={/* 클릭 처리 */})
Parameters
이름
타입
설명
text
String
FilterButton에 표시될 텍스트입니다.
modifier
Modifier
Modifier를 통해 스타일을 조정할 수 있습니다.
activeLabel
String
FilterButton이 활성화되었을 때 표시할 라벨 텍스트입니다.
isExpanded
Boolean
FilterButton이 확장 상태인지 여부입니다 (화살표 아이콘에 반영됨).
filterButtonDefault
WantedFilterButtonDefault
외부에서 주입하는 FilterButton의 기본 설정값입니다.
interactionSource
MutableInteractionSource
사용자 인터랙션 처리를 위한 객체입니다.
onClick
(() -> Unit)?
클릭 시 호출되는 콜백 함수입니다.
Advanced
WantedFilterButtonContract
Filter button에 대한 전반적인 계약을 정의하는 객체입니다.
이 객체는 Filter button의 시각적 변형 및 크기에 대한 enum 클래스를 포함합니다.
WantedFilterButtonDefault
WantedFilterButton의 기본 스타일을 정의하는 데이터 클래스입니다.
크기, 스타일 변형, 활성화 여부, 사용 가능 여부, 아이콘 색상, 배경 색상, 테두리 색상, 텍스트 스타일을 포함합니다.