仿今日头条Android App源码_高仿类似今日头条源码下载
2016-07-07 10:30:48  By: dwtedx

分享的项目是头条新闻客户端、应用相对来说是很完整的、引用了开源库pulltoRefresh、上拉下拉刷新、并附带第三方登录、qq和微博、不过得自己为应用申请一个key、同时使用slideMenu fragment的组合方式、可以有侧拉菜单

新闻数据、为json数据、并带有评论功能、项目中代码层次分明、大部分方法都加了详细的注释、对于想学习侧拉菜单和fragment viewpager的开发人员来说、简直是福音、上图

android 高仿今日头条


单例模式NewFragment()、不能使用默认构造器创建对象、外部只能下面的来创建、创建一个fragment类型、通过传入类型id产生多个不同的fragment实例对象

public static NewFragment newInastance(int category_id)
{
    NewFragment nf = new NewFragment();
    Bundle bundle = new Bundle();
    bundle.putInt("category_id", category_id);
    nf.setArguments(bundle);//绑定数据最早执行
    return nf;  
}


PullToRefreshListView初始化、自定义上拉下拉的参数

private void initPlv() {
    plv.setMode(Mode.BOTH);
    ILoadingLayout start =plv.getLoadingLayoutProxy(true, false);
    start.setLastUpdatedLabel(StringUtils.getTime(System.currentTimeMillis())); 
    start.setPullLabel("下拉刷新");
    start.setRefreshingLabel("刷新中...");
    start.setReleaseLabel("释放刷新");    
    ILoadingLayout end = plv.getLoadingLayoutProxy(false, true);
    end.setLastUpdatedLabel(StringUtils.getTime(System.currentTimeMillis()));
    end.setPullLabel("上拉加载更多");
    end.setRefreshingLabel("加载中...");
    end.setReleaseLabel("释放加载");
    //给plv设置点击plv显示背景
    //要使用PullToReFreshListView里面的listView来操作设置
    ListView lv = plv.getRefreshableView();
    lv.setBackgroundColor(Color.WHITE);
    lv.setSelector(R.drawable.sel_newfragment_plv);
    lv.setCacheColorHint(Color.parseColor("#00000000"));
    lv.setDividerHeight(DimenUtils.dp2px(1, act));
    Drawable divider = act.getResources().getDrawable(R.drawable.shape_newfragment_divider);
    lv.setDivider(divider);
    plv.setOnRefreshListener(listener);
    plv.setOnItemClickListener(this);
    //当点击某个类别时,plv出现,必须做自动刷新
    //这时没有给plv绑定适配器
    //而里头做了判断adapter为空就会return,要对源码做修改才能做到自动刷新
    plv.setRefreshing();
    //第一次刷新是没有适配器的,第一次刷新完后才会有
}


因为plv的item角标是1开始的、刷新头占的是0、咱们点击的item的新闻数据源对应的位置position-1、再携带跳转至新闻详情
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    Intent intent = new Intent();
    intent.setClass(act, NewsAcitvity.class);
    intent.putExtra("news", datas.get(position-1)); //需要携带显示的新闻
    startActivity(intent);
}


android 类似今日头条源代码下载链接: android 高仿今日头条 密码: hjpn

若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

    • qun 2016-10-18 11:38:30  6 评  | 回复

      能帮我做简单的数据库,用json包装数据,客户端解析json,获取新闻


    • dwtedx 2016-10-17 18:57:35  5 评  | 回复

      @qun:我这也没有多余的appid呢、申请的都在项目上用的呢、不好意思咯


    • qun 2016-10-17 11:31:35  4 评  | 回复

      第三方登录,个人开发者申请一直不给过,你申请过的账号能用一下吗,让我关联一下开发平台appid和appkey,重新激活一下应该能用吧


    • dwtedx 2016-10-17 11:24:02  3 评  | 回复

      @qun:不好意思、目前没有后台代码哦、后台的话哥们只能写一个爬虫去抓去数据了


    • qun 2016-10-17 10:57:07  1 评  | 回复

      仿今日头条有自己的后台服务器吗,发来看看


DD记账
top
+