Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- my_sql
- null safety
- jmeter
- mysql mongo 성능 비교
- flutter 믹스인
- null 병합 연산자
- array
- 주말에도 1일 1쿼리
- 오늘은 1일 2쿼리
- SQL
- 다중상속
- 비동기 처리
- 추상클래스
- 주말도 한다
- rdbms nosql 차이
- null check 연산자
- dart
- 주말도 식지않아
- 앱개발 가보자고
- 배열과 리스트
- 콜백 함수
- null 억제 연산자
- 컴포지션과 집합
- ?. ?? ! late
- 2일차
- FLUTTER
- late 키워드
- 1일 1쿼리
- LinkedList
- MySQL
Archives
- Today
- Total
subindev 님의 블로그
[작업일지] 2025.01.22(수) - 채팅 화면 MVVM패턴으로 변경, 디자인 개선 본문
프로젝트/[Team]🥇 A+ Market 중고 거래 플랫폼 앱
[작업일지] 2025.01.22(수) - 채팅 화면 MVVM패턴으로 변경, 디자인 개선
subindev 2025. 1. 22. 12:18오늘 목표
- 현재 MV로 구현된 채팅방, 목록 페이지 - MV VM 패턴으로 분리하기
- 채팅방 화면 디테일 - 키보드가 나오거나 입력한 뒤 최근 메시지가 제일 아래에 보이도록 설정
- 상품 등록화면 디자인 개선
- 홈 메인화면 디자인 개선
내일 목표
- 백 마이바티스 연결해서 JSON 쏴주기
- JSON 클래스로 변환해서 화면에 출력하기
채팅방 추가된 기능
- 키보드 외의 화면 터치나 드래그 시 키보드 자동으로 내려감
ListView.builder(
// 리스트를 드래그하면 키보드가 내려가도록 하는 코드
keyboardDismissBehavior:
ScrollViewKeyboardDismissBehavior.onDrag,
controller: _scrollController,
itemCount: room.messages.length,
itemBuilder: (context, index) {
final message = room.messages[index];
final isMyMessage = message.sender_id == myId;
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 16.0),
child: Row(
mainAxisAlignment: isMyMessage
? MainAxisAlignment.end
: MainAxisAlignment.start,
children: [
_buildMessageTimestamp(
isMyMessage, message.created_at),
SizedBox(width: isMyMessage ? 5 : 0),
_buildMessageContainer(
isMyMessage, message.message, context),
SizedBox(width: !isMyMessage ? 5 : 0),
_buildMessageTimestamp(
!isMyMessage, message.created_at),
],
),
);
},
)
- 키보드가 올라오면 최신메시지가 보이도록 함
오늘 느낀점
모바일 개발에서 사용자 UI 가 굉장히 중요하다는 점과 생각해야할 부분이 많다는 것을 느꼈음
'프로젝트 > [Team]🥇 A+ Market 중고 거래 플랫폼 앱' 카테고리의 다른 글
RDBMS vs NoSQL - 채팅 서비스 성능 비교 (JMeter 활용) (0) | 2025.02.07 |
---|---|
[작업일지] 2025.01.21(화) - 홈, 채팅 화면 구현 및 모델링 클래스 구현 (0) | 2025.01.21 |