Skip to content

Commit

Permalink
首页内容实现。
Browse files Browse the repository at this point in the history
  • Loading branch information
DemoJiang committed Oct 10, 2018
1 parent 5c594b0 commit 748d7e2
Show file tree
Hide file tree
Showing 33 changed files with 1,003 additions and 28 deletions.
Binary file modified .idea/caches/build_file_checksums.ser
Binary file not shown.
10 changes: 10 additions & 0 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.android.support:cardview-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
Expand Down Expand Up @@ -66,4 +67,13 @@ dependencies {

// SuperTextView
implementation 'com.github.lygttpod:SuperTextView:2.1.6'

// banner 轮播
implementation "com.youth.banner:banner:1.4.10"

// recycleview 适配器
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.30'

// Glide
implementation "com.github.bumptech.glide:glide:3.7.0"
}
30 changes: 30 additions & 0 deletions app/src/main/java/com/damon/adapter/HomePageAdapter.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package com.damon.adapter;

import android.support.annotation.Nullable;

import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.damon.R;
import com.damon.core.bean.ArticleData;

import java.util.List;

/**
* @author: DamonJiang
* @date: 2018/10/9 0009
* @description:
*/
public class HomePageAdapter extends BaseQuickAdapter<ArticleData,BaseViewHolder> {

public HomePageAdapter(@Nullable List<ArticleData> data) {
super(R.layout.item_article, data);
}

@Override
protected void convert(BaseViewHolder helper, ArticleData item) {
helper.setText(R.id.id_tv_author,item.getAuthor())
.setText(R.id.id_tv_flag,item.getChapterName())
.setText(R.id.id_tv_title,item.getTitle())
.setText(R.id.id_tv_time, item.getNiceDate());
}
}
4 changes: 4 additions & 0 deletions app/src/main/java/com/damon/app/App.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import com.damon.di.component.AppComponent;
import com.damon.di.component.DaggerAppComponent;
import com.damon.di.module.AppModule;
import com.damon.utils.SharedPrefUtils;

/**
* @author: DamonJiang
Expand All @@ -18,6 +19,9 @@ public class App extends Application{
@Override
public void onCreate() {
super.onCreate();
// 初始化 sp 工具类
SharedPrefUtils.init(this);

context = (App) this.getApplicationContext();
appComponent = DaggerAppComponent.builder()
.appModule(new AppModule(context))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
*/
public abstract class BaseFragment extends Fragment implements IView {
private Unbinder unBinder;
private FragmentComponent fragmentComponent;
protected FragmentComponent fragmentComponent;

protected abstract int getLayoutId(); // 初始化 UI

Expand Down
4 changes: 4 additions & 0 deletions app/src/main/java/com/damon/config/Constants.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,8 @@ public class Constants {
public static final String PATH_DATA = App.getContext().getCacheDir().getAbsolutePath() + File.separator + "data";

public static final String PATH_CACHE = PATH_DATA + "/NetCache";

public static final String USER_NAME = "username";

public static final String USER_PASSWORD = "password";
}
24 changes: 24 additions & 0 deletions app/src/main/java/com/damon/core/DataManager.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,15 @@
package com.damon.core;


import com.damon.core.bean.ArticleData;
import com.damon.core.bean.ArticleListData;
import com.damon.core.bean.BannerData;
import com.damon.core.bean.BaseResponse;
import com.damon.core.bean.LoginData;
import com.damon.core.http.ApiService;

import java.util.List;

import javax.inject.Inject;
import javax.inject.Singleton;

Expand All @@ -31,11 +36,30 @@ public DataManager(ApiService apiService) {

/**
* 登录
*
* @param username
* @param password
* @return
*/
public Observable<BaseResponse<LoginData>> getLoginData(String username, String password) {
return mApiService.getLoginData(username, password);
}

/**
* 广告轮播
*
* @return
*/
public Observable<BaseResponse<List<BannerData>>> getBannerData() {
return mApiService.getBannerData();
}

/**
* 首页文章列表
*
* @return
*/
public Observable<BaseResponse<ArticleListData>> getHomeArticleData(int num) {
return mApiService.getHomeArticleData(num);
}
}
182 changes: 182 additions & 0 deletions app/src/main/java/com/damon/core/bean/ArticleData.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,182 @@
package com.damon.core.bean;

import java.io.Serializable;

/**
* @author: DamonJiang
* @date: 2018/10/9 0009
* @description:
*/
public class ArticleData implements Serializable{
private String apkLink;
private String author;
private int chapterId;
private String chapterName;
private boolean collect;
private int courseId;
private String desc;
private String envelopePic;
private int id;
private String link;
private String niceDate;
private String origin;
private String projectLink;
private int superChapterId;
private String superChapterName;
private long publishTime;
private String title;
private int visible;
private int zan;

public String getApkLink() {
return apkLink;
}

public void setApkLink(String apkLink) {
this.apkLink = apkLink;
}

public String getAuthor() {
return author;
}

public void setAuthor(String author) {
this.author = author;
}

public int getChapterId() {
return chapterId;
}

public void setChapterId(int chapterId) {
this.chapterId = chapterId;
}

public String getChapterName() {
return chapterName;
}

public void setChapterName(String chapterName) {
this.chapterName = chapterName;
}

public boolean isCollect() {
return collect;
}

public void setCollect(boolean collect) {
this.collect = collect;
}

public int getCourseId() {
return courseId;
}

public void setCourseId(int courseId) {
this.courseId = courseId;
}

public String getDesc() {
return desc;
}

public void setDesc(String desc) {
this.desc = desc;
}

public String getEnvelopePic() {
return envelopePic;
}

public void setEnvelopePic(String envelopePic) {
this.envelopePic = envelopePic;
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getLink() {
return link;
}

public void setLink(String link) {
this.link = link;
}

public String getNiceDate() {
return niceDate;
}

public void setNiceDate(String niceDate) {
this.niceDate = niceDate;
}

public String getOrigin() {
return origin;
}

public void setOrigin(String origin) {
this.origin = origin;
}

public String getProjectLink() {
return projectLink;
}

public void setProjectLink(String projectLink) {
this.projectLink = projectLink;
}

public int getSuperChapterId() {
return superChapterId;
}

public void setSuperChapterId(int superChapterId) {
this.superChapterId = superChapterId;
}

public String getSuperChapterName() {
return superChapterName;
}

public void setSuperChapterName(String superChapterName) {
this.superChapterName = superChapterName;
}

public long getPublishTime() {
return publishTime;
}

public void setPublishTime(long publishTime) {
this.publishTime = publishTime;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

public int getVisible() {
return visible;
}

public void setVisible(int visible) {
this.visible = visible;
}

public int getZan() {
return zan;
}

public void setZan(int zan) {
this.zan = zan;
}
}
74 changes: 74 additions & 0 deletions app/src/main/java/com/damon/core/bean/ArticleListData.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
package com.damon.core.bean;

import java.util.List;

/**
* @author: DamonJiang
* @date: 2018/10/9 0009
* @description:
*/
public class ArticleListData {
private int curPage;
private List<ArticleData> datas;
private int offset;
private boolean over;
private int pageCount;
private int size;
private int total;

public int getCurPage() {
return curPage;
}

public void setCurPage(int curPage) {
this.curPage = curPage;
}

public List<ArticleData> getDatas() {
return datas;
}

public void setDatas(List<ArticleData> datas) {
this.datas = datas;
}

public int getOffset() {
return offset;
}

public void setOffset(int offset) {
this.offset = offset;
}

public boolean isOver() {
return over;
}

public void setOver(boolean over) {
this.over = over;
}

public int getPageCount() {
return pageCount;
}

public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}

public int getSize() {
return size;
}

public void setSize(int size) {
this.size = size;
}

public int getTotal() {
return total;
}

public void setTotal(int total) {
this.total = total;
}
}
Loading

0 comments on commit 748d7e2

Please sign in to comment.