mirror of
https://gh-proxy.org/https://github.com/tiajinsha/JKVideo
synced 2026-07-07 23:18:38 +08:00
feat: 优化下载页UI交互、支持暗黑主题,移除首页 header 底边框
- downloads.tsx: 删除前弹 Alert 确认框(区分"取消下载"和"删除文件") - downloads.tsx: 下载出错时显示"重新下载"按钮,跳转视频详情页 - downloads.tsx: 下载中取消按钮改为 close-circle-outline 图标 - downloads.tsx: 已完成条目整行可点击播放,移除单独"播放"按钮 - downloads.tsx: 播放器横竖屏均显示顶部控制栏,点击切换显隐 - downloads.tsx: 移除进度条旁 ActivityIndicator,保留百分比文字 - downloads.tsx: 全部颜色跟随暗黑主题(bg/card/text/textSub/border) - index.tsx: 移除悬浮 header 底部分割线
This commit is contained in:
@@ -49,7 +49,10 @@ export default function VideoDetailScreen() {
|
||||
const [danmakus, setDanmakus] = useState<DanmakuItem[]>([]);
|
||||
const [currentTime, setCurrentTime] = useState(0);
|
||||
const [showDownload, setShowDownload] = useState(false);
|
||||
const [uploaderStat, setUploaderStat] = useState<{ follower: number; archiveCount: number } | null>(null);
|
||||
const [uploaderStat, setUploaderStat] = useState<{
|
||||
follower: number;
|
||||
archiveCount: number;
|
||||
} | null>(null);
|
||||
const {
|
||||
videos: relatedVideos,
|
||||
loading: relatedLoading,
|
||||
@@ -71,7 +74,9 @@ export default function VideoDetailScreen() {
|
||||
|
||||
useEffect(() => {
|
||||
if (!video?.owner?.mid) return;
|
||||
getUploaderStat(video.owner.mid).then(setUploaderStat).catch(() => {});
|
||||
getUploaderStat(video.owner.mid)
|
||||
.then(setUploaderStat)
|
||||
.catch(() => {});
|
||||
}, [video?.owner?.mid]);
|
||||
|
||||
return (
|
||||
@@ -197,7 +202,8 @@ export default function VideoDetailScreen() {
|
||||
</Text>
|
||||
{uploaderStat && (
|
||||
<Text style={styles.upStat}>
|
||||
{formatCount(uploaderStat.follower)}粉丝 · {formatCount(uploaderStat.archiveCount)}视频
|
||||
{formatCount(uploaderStat.follower)}粉丝 ·{" "}
|
||||
{formatCount(uploaderStat.archiveCount)}视频
|
||||
</Text>
|
||||
)}
|
||||
</View>
|
||||
@@ -465,7 +471,7 @@ function SeasonSection({
|
||||
<TouchableOpacity
|
||||
style={[
|
||||
styles.epCard,
|
||||
{ backgroundColor: theme.card },
|
||||
{ backgroundColor: theme.card, borderColor: theme.border },
|
||||
isCurrent && styles.epCardActive,
|
||||
]}
|
||||
onPress={() => !isCurrent && onEpisodePress(ep.bvid)}
|
||||
@@ -564,10 +570,10 @@ const styles = StyleSheet.create({
|
||||
width: 120,
|
||||
borderRadius: 6,
|
||||
overflow: "hidden",
|
||||
borderWidth: 1.5,
|
||||
borderWidth: 1,
|
||||
borderColor: "transparent",
|
||||
},
|
||||
epCardActive: { borderColor: "#00AEEC" },
|
||||
epCardActive: { borderColor: "#00AEEC", borderWidth: 1.5 },
|
||||
epThumb: { width: 120, height: 68 },
|
||||
epNum: { fontSize: 11, color: "#999", paddingHorizontal: 6, paddingTop: 4 },
|
||||
epNumActive: { color: "#00AEEC", fontWeight: "600" },
|
||||
|
||||
Reference in New Issue
Block a user