TL채팅
WeChat의 높은 모방, iOSAppTemplate 코드 재구성. 이 버전의 TLChat은 TLKit 및 ZZFLEX를 기반으로 구현됩니다.
최근 계획
가까운 시일 내에 프로젝트 구조가 정리되고 전체 프로젝트가 주로 다음을 포함하여 코드 수준에서 모듈화될 것입니다.
- 채팅 인터페이스는 재구성되었으며 논리적으로 독립적입니다.
- 주요 제어 논리 배열;
- 메인 목록은 확장성을 높이기 위해 ZZFLEX를 사용하여 재구성되었습니다.
- ZZFLEX는 UIKit의 단일 레이어 캡슐화로, 주로 데이터 기반 목록 프레임워크와 UIKit에서 일반적으로 사용되는 컨트롤의 체인 확장을 포함하고 있으며 현재 오픈 소스입니다.
- iOS11 적응;
- 다른 기능도 개선되어야 합니다.
구현된 기능
- 메시지 인터페이스
- 메시지 목록(새 세션 가입, DB)
- 삭제할 메시지 슬라이드
- 친구 검색(퍼지 쿼리 지원)
- 추가 메뉴(항목을 동적으로 사용자 정의할 수 있음)
- 주소록 인터페이스
- 친구목록(그룹화 알고리즘, DB)
- 친구 검색
- 친구 정보(UI 추상 템플릿), 정보 설정 UI(설정 클래스 UI 템플릿 사용)
- 새로운 친구(휴대폰 연락처 읽기)
- 그룹 채팅(UI, DB)
- 태그(UI, 로직)
- 검색 인터페이스(메뉴 UI 템플릿 사용)
- 모멘트(전체 구조, UI 일부)
- 스캔(UI, QR 코드 스캔, 바코드 스캔)
- UI를 흔들어라
- 드리프트 병 UI
- 쇼핑, 게임(WebView 캡슐화)
- 내 인터페이스(메뉴 UI 템플릿 사용)
- 개인 정보(설정 클래스 UI 템플릿 사용)
- 이모티콘(UI, 네트워크 요청, 다운로드, 관리)
- 설정(추상 설정 클래스 UI 범용 템플릿)
- 글꼴 크기
- 채팅 배경
- 내 표정
- 채팅 기록 지우기
- 채팅 인터페이스
- 채팅 입력 상자
- 메시지 표시 보기
- 문자 메시지
- 그림 메시지
- 이모티콘 메시지
- 음성 메시지
- 채팅 키보드
- 이모티콘 키보드(이모티콘 동적 추가 및 삭제)
- 더 많은 키보드
- 채팅 기록 저장(DB)
계획된 기능
- 채팅 인터페이스: 영상 메시지
- 채팅 인터페이스: 위치 메시지
- 친구 서클: CoreText는 친구의 좋아요 및 답장 기능을 구현합니다.
- 채팅 모듈 추출
프로젝트에서 주로 사용하는 타사 라이브러리
- Masonry: 자동 레이아웃 프레임워크, 간단하고 효율적
- FMDB: sqlite 데이터베이스 관리 프레임워크
- AFNetworking: 네트워크 요청
- SDWebImage: 인터넷 이미지 다운로드 및 캐싱
- MJExtension: JSON - 모델 상호 변환 프레임워크, 효율적이고 낮은 결합
- MJRefresh: 새로 고치려면 아래로 당기고, 더 많은 것을 로드하려면 위로 당기고, 간단한 상속
- CocoaLumberjack: 로그 분류 및 현지화
- MWPhotoBrowser: 사진 선택기
- SVProgressHUD: 진행 프롬프트 상자