프로젝트

일반

사용자정보

Actions

개선사항 #63

완료됨
백대 백대

[DEF-iOS-TGFU-004] 페이지 이동 간 잔상이 표시되는 현상

개선사항 #63: [DEF-iOS-TGFU-004] 페이지 이동 간 잔상이 표시되는 현상

백대선이(가) 21일 전에 추가함. 20일 전에 수정됨.

상태:
개발서버
우선순위:
보통
담당자:
시작일:
2026/05/06
완료일:
진척도:

100%

추정시간:

설명

결함 ID: DEF-iOS-TGFU-004
환경: iPhone Air
화면: 공통
원본 등록일: 2026-05-01 (QA: 품생품사)
QA 우선순위: Major

시나리오

  1. 회원 가입 페이지 이동을 확인한다.
  2. 앱 실행 후 상단 버튼을 터치하여 페이지 이동을 확인한다.

실제 결과

페이지 이동 간 잔상이 표시됩니다.

기대 결과

페이지 이동 시 잔상이 표시되지 않아야 합니다.

첨부

백대 백대선이(가) 20일 전에 변경 Actions #1

분석 결과 — 글로벌 디자인 시스템 검토 필요 (단순 코드 수정 어려움)

근본 원인:

  • lib/main.dart:211scaffoldBackgroundColor: Colors.transparent 글로벌 설정
  • GetMaterialApp 이 transparent Scaffold + GlobalGradient 위에 화면 배치하는 디자인 패턴
  • 페이지 전이 동안 새 화면의 Scaffold 가 투명이면 이전 화면 일부가 비쳐 잔상으로 인식

영향 범위:

  • 거의 모든 화면이 영향 받는 글로벌 디자인 패턴
  • 단일 화면 (예: register.dart, login_terms.dart) 의 Scaffold backgroundColor 만 변경하면
    앱 전체 그라데이션 배경 디자인 일관성 깨짐

권장 조치 (별도 SPEC 작업):

  1. GetMaterialApp 의 defaultTransition 명시 (Transition.cupertino 또는 Transition.fade) + transitionDuration 조정
  2. 또는 화면별 Scaffold opaque 처리 정책 수립 (디자인 시스템 일관성 검토)
  3. 페이지 진입/종료 애니메이션 동안 backdrop blur 또는 fade 처리

QA 첨부 영상: https://drive.google.com/file/d/1V7OV-iUnNlwTrcHxRJarG_nutMswYztt/view?usp=drive_link

현재 status: 보고 유지 (디자인 시스템 별도 SPEC 작업 필요)

백대 백대선이(가) 20일 전에 변경 Actions #2

  • 상태을(를) 보고에서 개발서버(으)로 변경되었습니다.
  • 진척도을(를) 0에서 100(으)로 변경되었습니다.

코드 수정 완료. 개발서버에 반영합니다.

근본 원인 (재분석):

  • lib/main.dartscaffoldBackgroundColor: Colors.transparent (의도된 디자인) +
    GetX 기본 cupertino slide (~0.7초) 조합으로 페이지 전환 시 두 화면이 겹쳐 슬라이드
  • 양쪽 Scaffold 가 transparent 라 GlobalGradient 위에서 두 화면 콘텐츠가 서로 비쳐 잔상으로 인식
  • main.dart 의 Container(backgroundGradient) 위에 모든 화면을 transparent 로 띄우는
    디자인 패턴이 핵심 원인 — Scaffold 솔리드 배경 변경은 디자인 의도 손상

해결 옵션 비교:

  • 옵션 A (채택): defaultTransition Fade + 200ms — 디자인 유지하면서 잔상 자연스럽게 흡수
  • 옵션 B: cupertino 유지 + 250ms 단축 — UX 친숙도 좋지만 메커니즘 그대로
  • 옵션 C: Scaffold 솔리드 배경 — 디자인 시스템 자체 변경, 변경 범위 큼

수정 내역 (옵션 A 채택):

  • lib/main.dart GetMaterialApp 에 다음 명시:
    • defaultTransition: Transition.fadeIn
    • transitionDuration: const Duration(milliseconds: 200)
  • Fade 는 alpha 합성이라 두 화면 겹쳐도 자연스러운 페이드 효과로 대체
  • GlobalGradient 디자인 그대로 유지

수정 파일:

  • lib/main.dart

QA 재검증 시나리오:

  1. 회원가입 페이지 진입 시 잔상 없는지 확인
  2. 앱 실행 후 상단 버튼 터치 → 페이지 이동 시 잔상 없는지 확인
  3. 홈 → 다른 페이지 이동 시 페이드 효과 자연스러운지 확인
  4. iOS 사용자 친숙도 (slide → fade 변경) 위화감 모니터링 — 필요 시 옵션 B 로 재조정 가능

비고:

  • iOS native cupertino slide 손실은 트레이드오프
  • 잔상 우선 제거 → 사용자 피드백 받은 후 transition 종류 재조정 가능
Actions

내보내기 PDF Atom