From 4f8202f25f91501165f40e710696104eb5f01c22 Mon Sep 17 00:00:00 2001 From: doublex001 <16157008+doublex001@user.noreply.gitee.com> Date: Thu, 3 Sep 2026 12:08:16 +0800 Subject: [PATCH] =?UTF-8?q?fix(ui):=20=E8=BA=AB=E4=BB=BD=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E9=A1=B5=E6=B8=85=E7=90=86=E5=BC=80=E5=8F=91=E6=A0=87=E8=AF=86?= =?UTF-8?q?=E4=B8=8E=E5=90=8E=E5=8F=B0=E6=9C=AF=E8=AF=AD=EF=BC=8C=E7=BB=9F?= =?UTF-8?q?=E4=B8=80=E6=A0=B7=E5=BC=8F=E4=B8=8E=E6=96=87=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - _layout: identity-select 补 header 配置 title=选择身份,消除顶部暴露路由名 identity-select(同时获得系统返回按钮) - 移除底部悬浮齿轮入口「管理规则 / 风控审计」(后台术语,用户看不懂) - 统一两张身份卡图标样式:白底描边 + 主色线框,去除蓝/绿重量不均衡 - 卡片间距 12→16,缓解手机屏拥挤感 - 提示文案:点击上方卡片,进入对应身份页面(原「对应端」为开发术语) - 补充安抚提示:身份后续可在设置中切换(设置页已有该入口) - API: HR 卡片简介改为「发布岗位、筛选人才、管理评价、展示企业形象」 替换书面化运营话术「品牌透明度建设」 --- app/_layout.tsx | 1 + app/identity-select.tsx | 38 +++++++++++++++++++------------------- src/api/api.ts | 2 +- 3 files changed, 21 insertions(+), 20 deletions(-) diff --git a/app/_layout.tsx b/app/_layout.tsx index f906717..0f8ecd6 100644 --- a/app/_layout.tsx +++ b/app/_layout.tsx @@ -15,6 +15,7 @@ export default function RootLayout() { + diff --git a/app/identity-select.tsx b/app/identity-select.tsx index ed44f91..b972346 100644 --- a/app/identity-select.tsx +++ b/app/identity-select.tsx @@ -32,6 +32,10 @@ function LogoHeader() { /* ===================== 子组件:身份卡片 ===================== */ +/** + * 身份卡片:两张卡视觉重量保持一致(统一白底描边图标 + 主色线框), + * 仅通过选中态的主题色底与描边区分,避免蓝/绿双色造成的重量不均衡。 + */ function IdentityCard({ option, selected, @@ -41,7 +45,6 @@ function IdentityCard({ selected: boolean; onSelect: () => void; }) { - const isCandidate = option.role === 'candidate'; return ( {option.title} @@ -124,7 +127,7 @@ export default function IdentitySelectScreen() { }; return ( - + @@ -145,22 +148,18 @@ export default function IdentitySelectScreen() { ))} - 点击上方身份卡片,立即进入对应端 + 点击上方卡片,进入对应身份页面 + 身份后续可在设置中切换 )} - - router.push('/operation-rules')}> - - 管理规则 / 风控审计 - ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: colors.pageBg }, - body: { flexGrow: 1, padding: 20, paddingTop: 40 }, + body: { flexGrow: 1, padding: 20, paddingTop: 28 }, logoHeader: { alignItems: 'center', marginBottom: 32 }, logoCircle: { width: 72, @@ -174,7 +173,7 @@ const styles = StyleSheet.create({ logoText: { fontSize: 32, fontWeight: '800', color: colors.textInverse }, brandName: { fontSize: 24, fontWeight: '800', color: colors.textPrimary }, brandSlogan: { fontSize: 13, color: colors.textSecondary, marginTop: 6 }, - cards: { flexDirection: 'row', gap: 12, marginBottom: 24 }, + cards: { flexDirection: 'row', gap: 16, marginBottom: 20 }, card: { flex: 1, position: 'relative', @@ -192,6 +191,8 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'center', marginBottom: 12, + borderWidth: 1, + borderColor: colors.borderLight, }, cardTitle: { fontSize: 16, fontWeight: '700', color: colors.textPrimary }, cardTitleSelected: { color: colors.primaryText }, @@ -203,13 +204,12 @@ const styles = StyleSheet.create({ color: colors.textHint, textAlign: 'center', }, - manageLink: { - flexDirection: 'row', - alignItems: 'center', - justifyContent: 'center', - paddingVertical: 16, + switchTip: { + marginTop: 6, + fontSize: 12, + color: colors.textHint, + textAlign: 'center', }, - manageText: { marginLeft: 6, fontSize: 13, color: colors.textHint }, center: { flex: 1, alignItems: 'center', justifyContent: 'center', paddingHorizontal: 40, gap: 12 }, tip: { fontSize: 14, color: colors.textSecondary }, retryBtn: { paddingHorizontal: 18, paddingVertical: 8, borderRadius: 16, backgroundColor: colors.primaryLight }, diff --git a/src/api/api.ts b/src/api/api.ts index 1b85a64..69e6125 100644 --- a/src/api/api.ts +++ b/src/api/api.ts @@ -3260,7 +3260,7 @@ const MOCK_IDENTITY_OPTIONS: IdentityOption[] = [ { id: 'hr', title: '我是企业 / HR', - desc: '发布岗位、管理评价、人才推荐、品牌透明度建设', + desc: '发布岗位、筛选人才、管理评价、展示企业形象', icon: 'briefcase-outline', role: 'hr', },