본문으로 건너뛰기

디자인 커스터마이징

이 페이지에서는 BuzzAd iOS용 SDK에서 제공하는 UI의 디자인을 변경하기 위한 방법을 확인할 수 있습니다.

✏️  참고
추가적인 디자인 변경을 원하는 경우, 고급 설정 토픽을 참고해 UI를 직접 구현하세요.

피드 배경 색상 변경하기

 중요
이 기능은 BuzzAd iOS용 SDK v3.21.x부터 사용할 수 있습니다.

피드의 배경 색상을 변경할 수 있습니다.

피드의 배경 색상을 변경하려면 다음의 예시를 참고하세요.

✏️  참고
피드의 배경 색상을 지정하고 탭의 디자인을 따로 변경하지 않았다면, 피드의 배경 색상이 탭의 배경으로 자동 적용됩니다.

// BZVBuzzAdFeedTheme 설정을 통해 색상 등 UI 구성 요소를 변경할 수 있습니다.
let buzzAdFeedTheme = BZVBuzzAdFeedTheme { (builder: BZVBuzzAdFeedThemeBuilder) in
builder.feedBackgroundColor = UIColor.YOUR_BACKGROUND_COLOR
// ...생략...
}

BZVBuzzAdFeed.setDefaultTheme(buzzAdFeedTheme)

탭 디자인 변경하기

피드 탭이 활성화되어 있는 경우, 탭의 UI 디자인을 변경할 수 있습니다.

탭 UI 디자인을 변경하려면 다음의 예시를 참고하세요.

✏️  참고
사용자 경험을 고려하여 tabTextColor와 같은 BZVControlStateResource 타입은 인스턴스를 생성할 때 상태에 따라 다른 리소스를 설정하는 것을 권장합니다.

// BZVBuzzAdFeedTheme 설정을 통해 색상 등 UI 구성 요소를 변경할 수 있습니다.
let buzzAdFeedTheme = BZVBuzzAdFeedTheme { (builder: BZVBuzzAdFeedThemeBuilder) in
// ...생략...
builder.tabBackgroundColor = UIColor.YOUR_BACKGROUND_COLOR
builder.tabTextColor = BZVControlStateResource { builder in
builder.setValue(UIColor.YOUR_TEXT_NORMAL_COLOR, for: .normal)
builder.setValue(UIColor.YOUR_TEXT_HIGHLIGHT_COLOR, for: .highlight)
}
builder.tabIndicatorColors = BZVControlStateResource { builder in
builder.setValue(UIColor.YOUR_INDICATOR_NORMAL_COLOR, for: .normal)
builder.setValue(UIColor.YOUR_INDICATOR_HIGHLIGHT_COLOR, for: .highlight)
}
}

BZVBuzzAdFeed.setDefaultTheme(buzzAdFeedTheme)

필터 디자인 변경하기

피드 필터가 활성화되어 있는 경우, 필터의 UI 디자인을 변경할 수 있습니다.

필터 UI 디자인을 변경하려면 다음의 예시를 참고하세요.

✏️  참고
사용자 경험을 고려하여 filterTextColor, filterBackgroundColor와 같은 BZVControlStateResource 타입은 인스턴스를 생성할 때 상태에 따라 다른 리소스를 설정하는 것을 권장합니다.

let buzzAdFeedTheme = BZVBuzzAdFeedTheme { (builder: BZVBuzzAdFeedThemeBuilder) in
// ...생략...
builder.filterBackgroundColor = BZVControlStateResource { builder in
builder.setValue(UIColor.YOUR_BACKGROUND_NORMAL_COLOR, for: .normal)
builder.setValue(UIColor.YOUR_BACKGROUND_HIGHLIGHT_COLOR, for: .highlight)
}
builder.filterTextColor = BZVControlStateResource { builder in
builder.setValue(UIColor.YOUR_TEXT_NORMAL_COLOR, for: .normal)
builder.setValue(UIColor.YOUR_TEXT_HIGHLIGHT_COLOR, for: .highlight)
}
}

BZVBuzzAdFeed.setDefaultTheme(buzzAdFeedTheme)

지면 구분선 디자인 변경하기

피드의 광고 및 콘텐츠 구분선의 디자인을 변경할 수 있습니다.

지면 구분선 디자인을 변경하려면 다음의 예시를 참고하세요.

// BZVBuzzAdFeedTheme 설정을 통해 색상 등 UI 구성 요소를 변경할 수 있습니다.
let buzzAdFeedTheme = BZVBuzzAdFeedTheme { (builder: BZVBuzzAdFeedThemeBuilder) in
// ...생략...
builder.separatorColor = UIColor.YOUR_SEPARATOR_COLOR
builder.separatorHeight = YOUR_SEPARATOR_HEIGHT
builder.separatorHorizontalMargin = YOUR_SEPARATOR_HORIZONTAL_MARGIN
}

BZVBuzzAdFeed.setDefaultTheme(buzzAdFeedTheme)

CTA 버튼 디자인 변경하기

BuzzAd iOS용 SDK에서 제공하는 CTA 버튼의 디자인을 변경할 수 있습니다.

다음은 BZVBuzzAdFeedTheme에서 구성 요소를 설정해 피드 지면의 CTA 버튼 디자인을 변경하는 예시입니다.

✏️  참고
CTA textColor 및 backgroundColor는 BZVControlState.normal 상태의 색상만 적용됩니다.
추가적인 커스터마이징을 원하는 경우, CTA 버튼 자체 구현하기 토픽을 참고해 UI를 직접 구현하세요.

let buzzAdFeedTheme = BZVBuzzAdFeedTheme { (builder: BZVBuzzAdFeedThemeBuilder) in
// ...생략...
builder.rewardIcon = UIImage(named: "YOUR_REWARD_ICON")!
builder.participatedIcon = UIImage(named: "YOUR_PARTICIPATED_ICON")!
builder.ctaTextColor = BZVControlStateResource { builder in
builder.setValue(UIColor.YOUR_CTA_TEXT_NORMAL_COLOR, for: .normal)
}
builder.ctaBackgroundColor = BZVControlStateResource { builder in
builder.setValue(UIColor.YOUR_CTA_BACKGROUND_NORMAL_COLOR, for: .normal)
}
}

BZVBuzzAdFeed.setDefaultTheme(buzzAdFeedTheme)