# toutiao
**Repository Path**: wite6666/toutiao
## Basic Information
- **Project Name**: toutiao
- **Description**: 仿今日头条的安卓项目
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 2
- **Forks**: 3
- **Created**: 2019-06-06
- **Last Updated**: 2022-01-10
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 仿今日头条
仿今日头条项目是使用基于**java**的原生安卓开发的项目,前端使用的是**retrofit网络请求框架**与后端交互,后端使用**nodejs**后台,便利开发,而数据是使用的**mongoDB**数据库,不使用sql语句操作数据库,方便了开发。由于此项目仅供学习用途,所以使用今日头条的真实数据。觉得对你有帮助的话请帮忙star一下,让更多人知道,多谢啦!
### 现有功能
### 首页
首页是新闻列表的展示,新闻的刷新与加载更多,新闻的搜索,个人动态的发布,点击进入具体页面后,可以实现点赞,收藏,评论等功能。
### 西瓜视频
西瓜视频是视频列表的展示,视频列表的刷新与加载更多,以及播放视频,视频可以全屏播放。
### 小视频
小视频是视频列表的展示,小视频列表的刷新与加载更多,以及播放小视频,视频可以全屏播放。
### 我的
我的是实现了用户的登录以及注册与退出登录,用户可以修改个人的信息,查看个人的收藏,点赞内容,以及关注的用户。
### 第三方库
* 黄油刀
* Retrofit
* PullToRefresh
* Roundedimageview
* Toasty
* Jiaozivideoplayer
* Matisse(知乎开源的图片选择器)
* BaseDialog
* Materialdatetimepicker
* Citypickerview
* Appintro(图片轮播插件)
### 使用说明
导入Android studio后下载相关的包,build之后运行。
### 功能截图(图片已压缩)
### 导航页面

### 登录

### 注册

### 视频功能

### 小视频功能

### 新闻列表

### 搜索功能

### 发布功能

### 添加页签功能

### 修改个人信息

### 点赞功能

### 评论功能

### 关注功能

### 收藏功能

### 项目里的一些坑
* ViewPager+Fragment+TabLayout,由于ViewPager会预加载两三个Fragment,导致页签值和数据不匹配,需要使用ViewPager的懒加载。还有多个Fragment需要设置ViewPager的缓存页面的个数。
* ScrollView嵌套ListView、GridViev等自带滚动条的控件,会出现只显示一行的问题,需要重写ListView、GridView的onMeasure方法将来计算控件高度。
* Matisse图片选择器需要动态申请权限,且不兼容Glide3.8以上的版本,需要重写MyGlideEngine类,删除图片还会涉及到uri和path的转化。
软键盘弹出会压缩布局等。
### 声明
这个属于个人开发作品,仅做学习交流使用。另外该项目已经迁移到AndroidX,导入时可能出现大量错误,请做好心理准备。