Flutter 게시판 앱 만들기 — Flutter 게시판을 시간 순서대로 정리해보자

2025. 5. 21. 17:36·Flutter/Flutter 게시판 앱 만들기
728x90
반응형

게시판에서 글을 볼 때, 가장 먼저 떠오르는 기준은 무엇일까?
바로 "최신 글이 위에" 있어야 한다는 점이다.

이번 글에서는 Flutter 게시판 앱에 작성 시간을 기록하고,
글 목록을 최신순으로 정렬하는 기능을 추가해보자.


🕒 Post 모델에 작성 시간 추가

Post 모델에 createdAt 필드를 추가한다:

class Post {
  final String title;
  final String content;
  final DateTime createdAt;

  Post({
    required this.title,
    required this.content,
    required this.createdAt,
  });

  Map<String, dynamic> toJson() => {
    'title': title,
    'content': content,
    'createdAt': createdAt.toIso8601String(),
  };

  factory Post.fromJson(Map<String, dynamic> json) {
    return Post(
      title: json['title'],
      content: json['content'],
      createdAt: DateTime.parse(json['createdAt']),
    );
  }
}

toIso8601String()은 DateTime을 문자열로 변환할 때 가장 안전한 형식이다.


📆 글 작성 시 현재 시간 저장

글쓰기 화면에서 글을 저장할 때 DateTime.now()를 함께 저장한다:

final newPost = Post(
  title: _titleController.text,
  content: _contentController.text,
  createdAt: DateTime.now(),
);

context.read<PostProvider>().addPost(newPost);

이제 게시글에는 작성한 시간이 함께 기록된다.


🔽 최신순 정렬하기

글 리스트를 출력하기 전에 최신순으로 정렬하면 된다:

List<Post> sortedPosts = [...context.watch<PostProvider>().posts];
sortedPosts.sort((a, b) => b.createdAt.compareTo(a.createdAt));

b.createdAt.compareTo(a.createdAt)을 통해 최근 글이 먼저 오도록 정렬된다.


📅 리스트에 날짜 표시

글 목록이나 상세 보기 화면에서 작성일을 표시해주자:

Text(
  DateFormat('yyyy.MM.dd HH:mm').format(post.createdAt),
  style: TextStyle(color: Colors.grey),
)

날짜 포맷은 `intl` 패키지를 사용해 변환한다:

dependencies:
  intl: ^0.18.0
import 'package:intl/intl.dart';

🌿 UX 팁

  • 시간을 상대적으로 보여주기: “3분 전”, “어제”, “3일 전”
  • 가장 최근 글에는 “🆕 NEW” 뱃지를 추가할 수도 있음

🌱 다음 단계

다음 글에서는 사용자에게 더 편안한 경험을 주기 위한
다크 모드 완전 대응 기능을 추가해보자. 🌙

✍️ 이 글은 터미널 밖으로 나온 개발자의 Flutter 앱 만들기 여정입니다.

728x90
반응형

'Flutter > Flutter 게시판 앱 만들기' 카테고리의 다른 글

Flutter 게시판 앱 만들기 — APK 만들기부터 실기기 설치까지 완전 가이드  (0) 2025.05.21
Flutter 게시판 앱 만들기 — 감성 앱의 마무리는 어둠 속의 편안함  (0) 2025.05.21
Flutter 게시판 앱 만들기 — 북마크로 찜한 글만 모아보기  (0) 2025.05.21
Flutter 게시판 앱 만들기 — 실시간으로 게시글 찾기  (0) 2025.05.21
Flutter 게시판 앱 만들기 — Flutter 테마와 커스텀 스타일 적용하기  (0) 2025.05.21
'Flutter/Flutter 게시판 앱 만들기' 카테고리의 다른 글
  • Flutter 게시판 앱 만들기 — APK 만들기부터 실기기 설치까지 완전 가이드
  • Flutter 게시판 앱 만들기 — 감성 앱의 마무리는 어둠 속의 편안함
  • Flutter 게시판 앱 만들기 — 북마크로 찜한 글만 모아보기
  • Flutter 게시판 앱 만들기 — 실시간으로 게시글 찾기
코드를 걷는 사람
코드를 걷는 사람
devwanderer 님의 블로그 입니다.
  • 코드를 걷는 사람
    터미널 밖으로 나온 개발자
    코드를 걷는 사람
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Flutter
        • Flutter 게시판 앱 만들기
        • Flutter 뉴스 앱 만들기
        • Flutter 메모 앱 만들기
        • Flutter 캘린더 앱 만들기
        • Flutter 날씨 앱 만들기
      • Next.js
      • Ruby On Rails
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    뉴스앱
    flutter디자인
    table_calendar
    북마크기능
    Nextjs
    flutter상태관리
    캘린더앱
    RubyOnRails
    Flutter
    flutter개발
    ActiveRecord
    openweather
    날씨앱
    다크모드
    UI디자인
    백엔드개발
    Firebase
    개발블로그
    감성앱
    정적사이트
    fluttertips
    flutterui
    flutter앱개발
    메모앱
    flutter게시판
    UIUX
    코드를걷는사람
    rails보안
    모바일앱개발
    flutter기초
  • 최근 댓글

  • 최근 글

  • 반응형
    250x250
  • hELLO· Designed By정상우.v4.10.3
코드를 걷는 사람
Flutter 게시판 앱 만들기 — Flutter 게시판을 시간 순서대로 정리해보자
상단으로

티스토리툴바