新闻APP前台和后台管理系统 MVP+Dragger2+RxJava+RetroFit

本文介绍了一个新闻资讯APP,包括前台和后台管理系统,用户可查看新闻、注册登录、评论收藏等。系统采用MVP+Dagger2+RxJava+Retrofit技术栈,后台使用SpringBoot+SSM。提供项目功能结构图、技术细节及代码实现,可在GitHub获取项目源码。

一 系统说明

该新闻资讯APP 主要是用户可以查看各种各样的新闻资讯,并且可以进行注册,登录账号,评论,收藏,取消收藏,浏览新闻,发布新闻,修改修改,删除新闻,用户管理,个人信息等操作,该APP分为前台和后台管理系统。东西很多,非常值得学习。

二 项目功能结构图

在这里插入图片描述

三 项目技术

APP端核心技术: MVP+Dagger2+ rxjava+ retrofit+ butterknife
APP后台服务技术:html+jquery+js+springboot+ssm
开发软件:idea或者eclipse +android studio
数据库 :mysql数据库
JDK: 1.8以上
模拟器:逍遥模拟器或者夜神模拟器

四 项目实现

登录效果:
在这里插入图片描述
代码实现:

/**
 *   描述:登录Activity
 *   联系方式:QQ 2579692606
 */
public class LoginActivity extends BaseActivity<LoginView,LoginPersenter> implements LoginView {
    //注册组件
    @BindView(R.id.regTv)
     TextView regTv;
    //用户名称
    @BindView(R.id.log_name)
     EditText loginNameEt ;
    //密码
    @BindView(R.id.log_pwd)
     EditText loginPwdEt ;
     LoginView mView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //登录监听事件
        regTv.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                intent.setClass(LoginActivity.this, RegActivity.class);
                //启动
                startActivity(intent);
            }
        });

    }
 //登录系统
    public void loginSys(View view){
        String username = loginNameEt.getText().toString().trim();
        String pwd = loginPwdEt.getText().toString().trim();
        ContentValues values = new ContentValues();
        values.put("username",username);
        values.put("password",pwd);

        if(TextUtils.isEmpty(username) || TextUtils.isEmpty(pwd)){
            Toast.makeText(this,"用户名和密码不能为空", Toast.LENGTH_SHORT).show();
        }else {
            createPresenter().login(username,pwd);
        }

    }

    @NonNull
    @Override
    public LoginPersenter createPresenter() {
        mView = getMvpView();
        return new LoginPersenter(getApp(),mView);
    }
    @Override
    public int getLayoutId() {
            return R.layout.activity_login;
    }
	
    @Override
    public void initView() {
    }
    @Override
    public void initData() {
    }

  	 //登录成功处理
    @Override
    public void onCompleted() {
        Intent intent=new Intent();
        intent.setClass(LoginActivity.this, MainActivity.class);
        startActivity(intent);
    }

  	 //登录失败处理
    @Override
    public void onFailed(String msg) {
        ToastUtils.showToast(getBaseContext(),msg);
    }
	//登录存储数据
    @Override
    public void onSuccessData(Map mp) {
        CommonUtils.storeLoginUser(mp, LoginActivity.this);
        onCompleted();
    }
}

其他新闻页
在这里插入图片描述
核心代码实现:

public Object instantiateItem(ViewGroup container, int pos) {
			//ListView
            ListView mListView = new ListView(mActivity);
			//得到新闻适配器
            NewsAdapter newsAdapter = new NewsAdapter(getContext(),R.layout.news_item,
                    CommonUtils.getListByPos(pos,newsList));
            //设置适配器
            mListView.setAdapter(newsAdapter);
			//加入容器中
            container.addView(mListView);
            return mListView;
        }

五 项目获取

github: https://github.com/soulCoder1998/newsapp

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值