Card

콘텐츠에 대한 정보를 간략하게 표현하는 기본 카드 요소입니다. 이미지, 텍스트, 뱃지 등 다양한 요소를 조합하여 각 항목의 정보를 시각적으로 일관성 있게 전달합니다.

@MainActor struct Card

Overview

썸네일 이미지와 제목, 캡션 등의 텍스트 콘텐츠를 수직 방향으로 배치한 카드입니다. 스켈레톤 로딩 상태를 지원하고, 썸네일 위에 오버레이 콘텐츠를 표시할 수 있습니다.

@State private var isLoading = false

Card(
    thumbnail: { Thumbnail(urlString: imageURL, ratio: .r16x9) },
    skeleton: $isLoading,
    title: "카드 제목"
)
.caption("부제목")
.overlay(caption: "New", buttonIcon: .heart)

Topics

Initializers

init(thumbnail: () -> Thumbnail, skeleton: Binding<Bool>, title: String)

카드를 초기화합니다.

  • Parameters
    ParameterDescription
    thumbnail카드에 표시할 썸네일 이미지
    skeleton스켈레톤 로딩 상태 바인딩
    title카드 제목으로 표시할 뷰

Instance Properties

var body: some View

뷰의 내용과 동작을 정의합니다.

Instance Methods

func bottomContent<V>(() -> V) -> Card

카드 하단에 표시할 콘텐츠를 설정합니다.

  • Parameters

    ParameterDescription
    content하단에 표시할 콘텐츠 뷰를 반환하는 클로저
  • Return Value

    수정된 카드 인스턴스

func caption(String?) -> Card

카드의 캡션(부제목)을 설정합니다.

  • Parameters

    ParameterDescription
    caption표시할 캡션 문자열
  • Return Value

    수정된 카드 인스턴스

func extraCaption(String?) -> Card

카드의 추가 캡션을 설정합니다.

  • Parameters

    ParameterDescription
    extraCaption표시할 추가 캡션 문자열
  • Return Value

    수정된 카드 인스턴스

func overlay(caption: String?, buttonIcon: Montage.Icon?, buttonColor: SwiftUI.Color, onTapButton: (() -> Void)?) -> Card

썸네일에 오버레이할 콘텐츠를 설정합니다.

  • Parameters

    ParameterDescription
    caption오버레이에 표시할 텍스트
    buttonIcon오버레이에 표시할 버튼 아이콘
    buttonColor버튼 아이콘 색상
    onTapButton버튼 탭 시 실행할 액션
  • Return Value

    수정된 카드 인스턴스

func subCaption(String?) -> Card

카드의 보조 캡션을 설정합니다.

  • Parameters

    ParameterDescription
    subCaption표시할 보조 캡션 문자열
  • Return Value

    수정된 카드 인스턴스

func topContent<V>(() -> V) -> Card

카드 상단에 표시할 콘텐츠를 설정합니다.

  • Parameters

    ParameterDescription
    content상단에 표시할 콘텐츠 뷰를 반환하는 클로저
  • Return Value

    수정된 카드 인스턴스

Relationships

Conforms To

Swift.Sendable

SwiftUICore.View

© 2026 Wanted Lab, Inc.