岚书日记

Features

1、Material Design设计风格

Toolbar、Snackbar、RecycleView、SwipeRefreshLayout、Activity跳转动画

2、MVP架构+单Activity多Fragment模式

参考Googole MVP Demo加上自己的一些思考,搭建了一个属于自己的项目架构,虽然不一定很准确无误,但起码是我目前水平所能做到比较满意的了

项目结构如下所示:

  • application :自定义的全局application类
  • commom :公共类库
    • constants :常量类
    • data : 数据源,包括本地和远程
    • network :网络请求封装,使用Retrofit+rxJava
    • share :分享管理类
    • utlis :常用工具类
    • widgets :自定义的View,如TabLayout、RowView
  • framework :全局框架,使用时必须继承相关基类,如BaseActivity、BaseFragment、RxBus
  • module :业务逻辑层,按照相关功能划分模块
  • wxapi :微信分享回调所必须的集成类

3、启动页使用开源动画lottie

4、首页仿知乎上下滑动隐藏菜单栏

滑动隐藏顶部Toolbar这种效果网上大多数Demo都可以看到,但隐藏底部的Tab就需要用到自定义Behavior了,注意这个Behavior是依赖于AppBarLayout的,当AppBarLayout里的Toolbar发生位移的时候底部的Tab也跟随着向下隐藏,在此附上自定义的TabBehavior:


public class TabBehavior extends  CoordinatorLayout.Behavior<View> {
    public TabBehavior(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    public boolean layoutDependsOn(CoordinatorLayout parent, View child, View dependency) {
        return dependency instanceof AppBarLayout;
    }

    @Override
    public boolean onDependentViewChanged(CoordinatorLayout parent, View child, View dependency) {

        float translationY = Math.abs(dependency.getTop());
        child.setTranslationY(translationY);
        return true;
    }
}

使用的时候引入这个Behavior即可

5、封装底部Tab、常用RowView、PullRecycleView等

底部Tab封装成TabLayout,添加一个Tab几行代码搞定:


        ArrayList<TabLayout.Tab> tabs = new ArrayList<>();
        tabs.add(new TabLayout.Tab(R.drawable.ic_bottomtabbar_news, R.string.tab_news, NewsFragment.class));
        tabs.add(new TabLayout.Tab(R.drawable.ic_bottomtabbar_wechat, R.string.tab_wechat, WechatFragment.class));
        tabs.add(new TabLayout.Tab(R.drawable.ic_bottomtabbar_about, R.string.tab_about, AboutFragment.class));
        mTabLayout.setUpData(tabs, this);
        mTabLayout.setCurrentTab(0);

6、集成第三方:社会化分享、检测更新、埋点统计

主要是用到了友盟社会化分享Bugly异常上报与应用升级LeanCloud用户反馈SDK,基本没有什么大的技术含量,照着文档集成就Ok了

Demo

运行效果图:

Download

Todo

V 1.0.0

  1. 项目框架搭建(Material Design + MVP + ButterKnife + RxJava + Retrofit + Glide+lottie)~~
  2. 主界面(新闻、微信热文)
  3. 社会化分享
  4. 埋点统计

other

仿知乎日报 ,为用户提供有价值的信息流,这是『岚书』的定位和理念,产品从0到1的过程,学习了很多,收获了很多,如无意外地将会持续维护下去,未来的日子会增加一些有意思的功能,敬请期待。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值