DevStore首页 > DEV资源 > 源码下载 > 源码详情

Android应用源码比较不错的新闻客户端

 
阿斯顿0124 | 2014-08-22 15:55    浏览量(59434)    评论(95)    收藏(55)
功能分类:新闻 支持平台:Android 运行环境:Android
开发语言:Java 开发工具:Eclipse 源码大小:4.11MB
下载源码 8845 人下载

源码简介

本项目是一个挺不错的新闻客户端项目源码,本项目中,启动引导、登录注册、用户中心列表显示、文章分页、下拉刷新、文章收藏、更新反馈等新闻客户端常见的功能都有,项目分层合理,代码质量较高,另外有单独的Activity堆栈式管理,唯一遗憾的是服务端挂掉了,数据使用webserverice调用,翻了翻源码服务端本来是放在新浪云上的,比较遗憾的是现在挂掉了,本项目编码GB2312默认编译版本4.0.3。

源码截图

  • 新闻一览页面
DevStore所有源码来自用户上传分享,版权问题及牵扯到商业纠纷均与DevStore无关。

源码片段

public class MainActivity extends TabActivity {

    TabHost tabHost;
    TabHost.TabSpec tabSpec;
    RadioGroup radioGroup;

    private AppContext appContext;// 全局Context

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        AppManager.getAppManager().addActivity(this);

        appContext = (AppContext) getApplication();
        // 网络连接判断
        if (!appContext.isNetworkConnected())
            UIHelper.ToastMessage(this, R.string.network_not_connected);

        // 初始化登录
        appContext.initLoginInfo();

        initViews();

        // 有米广告配置 初始化应用的发布ID和密钥,以及设置测试模式
//        AdManager.getInstance(this).init(appContext.YOUMI_ID, appContext.YOUMI_KEY, false);
//        // 请务必调用以下代码,告诉SDK应用启动,可以让SDK进行一些初始化操作。该接口务必在SDK的初始化接口之后调用。
//        OffersManager.getInstance(this).onAppLaunch();
    }

    @Override
    protected void onDestroy() {
        // TODO Auto-generated method stub
        super.onDestroy();
        // 有米广告配置 如果使用积分广告,请务必调用积分广告的初始化接口:
//        OffersManager.getInstance(this).onAppExit();
        AppManager.getAppManager().finishActivity(this);
    }

    private void initViews() {
        tabHost = getTabHost();
        tabHost.addTab(tabHost.newTabSpec("news").setIndicator("News").setContent(new Intent(this, TabNewsActivity.class)));
        tabHost.addTab(tabHost.newTabSpec("mood").setIndicator("Mood").setContent(new Intent(this, TabMoodActivity.class)));
        tabHost.addTab(tabHost.newTabSpec("user").setIndicator("User").setContent(new Intent(this, TabUserActivity.class)));
        tabHost.addTab(tabHost.newTabSpec("find").setIndicator("Find").setContent(new Intent(this, TabFindActivity.class)));
        tabHost.addTab(tabHost.newTabSpec("setting").setIndicator("Setting").setContent(new Intent(this, TabSettingActivity.class)));

        radioGroup = (RadioGroup) findViewById(R.id.radiogroup);
        radioGroup.setOnCheckedChangeListener(checkedChangeListener);
    }

    private final OnCheckedChangeListener checkedChangeListener = new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            switch (checkedId) {
                case R.id.radio_news:
                    tabHost.setCurrentTabByTag("news");
                    break;
                case R.id.radio_mood:
                    tabHost.setCurrentTabByTag("mood");
                    break;
                case R.id.radio_user:
                    AppContext.SHOW_LOGIN_FLAG = true;
                    tabHost.setCurrentTabByTag("user");
                    break;
                case R.id.radio_find:
                    tabHost.setCurrentTabByTag("find");
                    break;
                case R.id.radio_setting:
                    tabHost.setCurrentTabByTag("setting");
                    break;
                default:
                    break;
            }
        }
    };

    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        AppContext.bottomHeight = radioGroup.getHeight();
    };

    @Override
    public boolean dispatchKeyEvent(KeyEvent event) {
        int keyCode = event.getKeyCode();
        if (event.getAction() == KeyEvent.ACTION_DOWN && keyCode == KeyEvent.KEYCODE_BACK) {
            // 是否退出应用
            UIHelper.Exit(this);
            return true;
        }
        return super.dispatchKeyEvent(event);
    }

}
  •   赞(14) 赞 +1 赞(14) 已赞
  •   收藏(55) 收藏 +1 已收藏 取消
  •   下载(8845)
评论(95)
徐来清

徐来清 2017-03-31 10:19:15

缺少CacheManager怎么回事?可以发一个嘛
回复(0) 赞(2) 赞(3)
风爵

风爵 2016-12-02 09:33:32

点赞,学习了
回复(0) 赞(0) 赞(1)
jyq_yspa

jyq_yspa 2016-08-24 17:20:40

先给楼主点个赞!
回复(0) 赞(1) 赞(2)
城许愿

城许愿 2016-08-22 20:14:20

报错,运行不了
回复(0) 赞(0) 赞(1)
陌離

陌離 2016-06-13 11:37:35

AppContext clearAppCache() 方法 CacheManager没找到这个类,报错
回复(0) 赞(3) 赞(4)
  • 推荐
  • 审核
  • 收录
  • 获取活力值

源码上传作者

  • 6 能力值
  • 3 源码
  • 0 评测
  • 0 资料
擅长: SEO 推广 动画特效

热门源码