feat(image): 메인 라이브 탭에 DownsampledKFImage 적용

- 수평 리스트 HStack → LazyHStack으로 교체해 프리로딩/메모리 개선
This commit is contained in:
Yu Sung
2025-10-23 19:03:54 +09:00
parent 8221746569
commit d9fcdff7a2
4 changed files with 16 additions and 20 deletions

View File

@@ -27,11 +27,11 @@ struct LiveNowItemView: View {
VStack(spacing: 0) {
ZStack(alignment: .bottom) {
ZStack {
KFImage(URL(string: item.creatorProfileImage))
.cancelOnDisappear(true)
.resizable()
.frame(width: 72, height: 72)
.clipShape(Circle())
DownsampledKFImage(
url: URL(string: item.creatorProfileImage),
size: CGSize(width: 72, height: 72)
)
.clipShape(Circle())
}
.frame(width: 84, height: 84)
.overlay {

View File

@@ -42,7 +42,7 @@ struct SectionLiveNowView: View {
if items.count > 0 {
ScrollView(.horizontal, showsIndicators: false) {
HStack(alignment: .top, spacing: 16) {
LazyHStack(alignment: .top, spacing: 16) {
ForEach(items, id: \.self) { item in
LiveNowItemView(item: item)
.contentShape(Rectangle())

View File

@@ -17,13 +17,11 @@ struct LiveReservationItemView: View {
var body: some View {
HStack(spacing: 16) {
ZStack(alignment: .topLeading) {
KFImage(URL(string: item.creatorProfileImage))
.cancelOnDisappear(true)
.resizable()
.scaledToFill()
.frame(width: 100, height: 100, alignment: .top)
.cornerRadius(16)
.clipped()
DownsampledKFImage(
url: URL(string: item.creatorProfileImage),
size: CGSize(width: 100, height: 100)
)
.cornerRadius(16)
if item.isPrivateRoom {
Image("ic_lock")

View File

@@ -29,13 +29,11 @@ struct MyLiveReservationItemView: View {
HStack(spacing: 16) {
ZStack(alignment: .topLeading) {
KFImage(URL(string: item.creatorProfileImage))
.cancelOnDisappear(true)
.resizable()
.scaledToFill()
.frame(width: 100, height: 100, alignment: .top)
.cornerRadius(16)
.clipped()
DownsampledKFImage(
url: URL(string: item.creatorProfileImage),
size: CGSize(width: 100, height: 100)
)
.cornerRadius(16)
if item.isPrivateRoom {
Image("ic_lock")