• 大小: 306KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-24
  • 语言: Java
  • 标签: mvp  

资源简介

该项目快捷简洁的实现了Android mvp模式,非常明了易懂

资源截图

代码片段和文件信息

/*
 *
 *  * Copyright (C) 2018 Antonio Leiva Gordillo.
 *  *
 *  * Licensed under the Apache License Version 2.0 (the “License“);
 *  * you may not use this file except in compliance with the License.
 *  * You may obtain a copy of the License at
 *  *
 *  *      http://www.apache.org/licenses/LICENSE-2.0
 *  *
 *  * Unless required by applicable law or agreed to in writing software
 *  * distributed under the License is distributed on an “AS IS“ BASIS
 *  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND either express or implied.
 *  * See the License for the specific language governing permissions and
 *  * limitations under the License.
 *
 */

package com.antonioleiva.mvpexample.app.login;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.EditText;
import android.widget.ProgressBar;

import com.antonioleiva.mvpexample.app.R;
import com.antonioleiva.mvpexample.app.main.MainActivity;

public class LoginActivity extends AppCompatActivity implements LoginView {

    private ProgressBar progressBar;
    private EditText username;
    private EditText password;
    private LoginPresenter presenter;

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

        progressBar = findViewById(R.id.progress);
        username = findViewById(R.id.username);
        password = findViewById(R.id.password);
        findViewById(R.id.button).setonclickListener(v -> validateCredentials());

        presenter = new LoginPresenter(this new LoginInteractor());
    }

    @Override
    protected void onDestroy() {
        presenter.onDestroy();
        super.onDestroy();
    }

    @Override
    public void showProgress() {
        progressBar.setVisibility(View.VISIBLE);
    }

    @Override
    public void hideProgress() {
        progressBar.setVisibility(View.GONE);
    }

    @Override
    public void setUsernameError() {
        username.setError(getString(R.string.username_error));
    }

    @Override
    public void setPasswordError() {
        password.setError(getString(R.string.password_error));
    }

    @Override
    public void navigateToHome() {
        startActivity(new Intent(this MainActivity.class));
        finish();
    }

    private void validateCredentials() {
        presenter.validateCredentials(username.getText().toString() password.getText().toString());
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-07-04 16:13  androidmvp-master\
     文件         416  2018-07-04 16:13  androidmvp-master\.gitignore
     文件         687  2018-07-04 16:13  androidmvp-master\HOW-IT-WORKS.md
     文件         486  2018-07-04 16:13  androidmvp-master\README.md
     目录           0  2018-07-04 16:13  androidmvp-master\app\
     文件           7  2018-07-04 16:13  androidmvp-master\app\.gitignore
     文件         895  2018-07-04 16:13  androidmvp-master\app\build.gradle
     文件         715  2018-07-04 16:13  androidmvp-master\app\proguard-rules.txt
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\
     文件         879  2018-07-04 16:13  androidmvp-master\app\src\main\AndroidManifest.xml
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\java\
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\login\
     文件        2535  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\login\LoginActivity.java
     文件         834  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\login\LoginInteractor.java
     文件        1809  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\login\LoginPresenter.java
     文件         876  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\login\LoginView.java
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\main\
     文件        1416  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\main\FindItemsInteractor.java
     文件        2806  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\main\MainActivity.java
     文件        1533  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\main\MainAdapter.java
     文件        1633  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\main\MainPresenter.java
     文件         889  2018-07-04 16:13  androidmvp-master\app\src\main\java\com\antonioleiva\mvpexample\app\main\MainView.java
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\res\
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\res\drawable-hdpi\
     文件        9397  2018-07-04 16:13  androidmvp-master\app\src\main\res\drawable-hdpi\ic_launcher.png
     目录           0  2018-07-04 16:13  androidmvp-master\app\src\main\res\drawable-mdpi\
............此处省略97个文件信息

评论

共有 条评论