diff --git a/dimensionhub/Views/DetailView.swift b/dimensionhub/Views/DetailView.swift index bd7d434..da9be5a 100644 --- a/dimensionhub/Views/DetailView.swift +++ b/dimensionhub/Views/DetailView.swift @@ -257,17 +257,19 @@ struct DetailView: View { } } - HStack(alignment: .center) { - NavigationLink(destination: ListView(id: self.id)) { - Rectangle() - .frame(width: 200, height: 25) - .foregroundColor(Color(hex: "#F2F2F2")) - .overlay { - Text("展开全部剧集") - .font(.system(size: 13)) - .foregroundColor(Color(hex: "#999999")) - .fontWeight(.regular) - } + if detailModel.selectedEpisodes.count >= 5 { + HStack(alignment: .center) { + NavigationLink(destination: ListView(id: self.id)) { + Rectangle() + .frame(width: 200, height: 25) + .foregroundColor(Color(hex: "#F2F2F2")) + .overlay { + Text("展开全部剧集") + .font(.system(size: 13)) + .foregroundColor(Color(hex: "#999999")) + .fontWeight(.regular) + } + } } } diff --git a/dimensionhub/Views/IndexView.swift b/dimensionhub/Views/IndexView.swift index 35f3ddd..980f579 100644 --- a/dimensionhub/Views/IndexView.swift +++ b/dimensionhub/Views/IndexView.swift @@ -422,7 +422,11 @@ extension IndexView { VStack(alignment: .center) { GeometryReader { geometry in AsyncImage(url: URL(string: item.thumb)) { image in - image.resizable() + image + .resizable() + .aspectRatio(contentMode: .fit) + .frame(width: geometry.frame(in: .local).width, height: 80) + .clipped() } placeholder: { ProgressView() } diff --git a/dimensionhub/Views/ListView.swift b/dimensionhub/Views/ListView.swift index 677a6c9..ecfdd41 100644 --- a/dimensionhub/Views/ListView.swift +++ b/dimensionhub/Views/ListView.swift @@ -113,7 +113,7 @@ struct ListView: View { // 渠道相关的数据列表 ScrollView(.vertical, showsIndicators: false) { - VStack(alignment: .center, spacing: 15) { + LazyVStack(alignment: .center, spacing: 15) { ForEach(detailModel.selectedEpisodes) { episode in HStack(alignment: .center) { AsyncImage(url: URL(string: episode.thumb)) { image in