Skip to content

Commit de0eab7

Browse files
committed
Initial commit
0 parents  commit de0eab7

28 files changed

+724
-0
lines changed

app/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/build

app/build.gradle

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
apply plugin: 'com.android.application'
2+
3+
android {
4+
compileSdkVersion 23
5+
buildToolsVersion "23.0.2"
6+
7+
defaultConfig {
8+
applicationId "cn.hugeterry.coderfun"
9+
minSdkVersion 15
10+
targetSdkVersion 23
11+
versionCode 1
12+
versionName "1.0"
13+
}
14+
buildTypes {
15+
release {
16+
minifyEnabled false
17+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
18+
}
19+
}
20+
}
21+
22+
dependencies {
23+
compile fileTree(dir: 'libs', include: ['*.jar'])
24+
testCompile 'junit:junit:4.12'
25+
compile 'com.android.support:appcompat-v7:23.1.1'
26+
27+
compile 'com.nineoldandroids:library:2.4.0'
28+
compile 'com.flyco.roundview:FlycoRoundView_Lib:1.1.2@aar'
29+
compile 'com.flyco.tablayout:FlycoTabLayout_Lib:1.5.0@aar'
30+
31+
compile 'com.squareup.retrofit:retrofit:2.0.0-beta2'
32+
compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
33+
compile 'com.squareup.retrofit:adapter-rxjava:2.0.0-beta2'
34+
compile 'io.reactivex:rxjava:1.1.0'
35+
compile 'io.reactivex:rxandroid:1.1.0'
36+
}

app/proguard-rules.pro

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Add project specific ProGuard rules here.
2+
# By default, the flags in this file are appended to flags specified
3+
# in /Users/admin/Library/Android/sdk/tools/proguard/proguard-android.txt
4+
# You can edit the include path and order by changing the proguardFiles
5+
# directive in build.gradle.
6+
#
7+
# For more details, see
8+
# http://developer.android.com/guide/developing/tools/proguard.html
9+
10+
# Add any project specific keep options here:
11+
12+
# If your project uses WebView with JS, uncomment the following
13+
# and specify the fully qualified class name to the JavaScript interface
14+
# class:
15+
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
16+
# public *;
17+
#}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package cn.hugeterry.coderfun;
2+
3+
import android.app.Application;
4+
import android.test.ApplicationTestCase;
5+
6+
/**
7+
* <a href="http://d.android.com/tools/testing/testing_android.html">Testing Fundamentals</a>
8+
*/
9+
public class ApplicationTest extends ApplicationTestCase<Application> {
10+
public ApplicationTest() {
11+
super(Application.class);
12+
}
13+
}

app/src/main/AndroidManifest.xml

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3+
package="cn.hugeterry.coderfun">
4+
<uses-permission android:name="android.permission.INTERNET"/>
5+
<application
6+
android:allowBackup="true"
7+
android:icon="@mipmap/ic_launcher"
8+
android:label="@string/app_name"
9+
android:supportsRtl="true"
10+
android:theme="@style/AppTheme">
11+
<activity android:name=".views.MainActivity">
12+
<intent-filter>
13+
<action android:name="android.intent.action.MAIN" />
14+
15+
<category android:name="android.intent.category.LAUNCHER" />
16+
</intent-filter>
17+
</activity>
18+
</application>
19+
20+
</manifest>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package cn.hugeterry.coderfun.adapter;
2+
3+
import android.support.v4.app.Fragment;
4+
import android.support.v4.app.FragmentManager;
5+
import android.support.v4.app.FragmentPagerAdapter;
6+
7+
import java.util.ArrayList;
8+
9+
/**
10+
* Created by hugeterry(http://hugeterry.cn)
11+
* Date: 16/2/9 02:44
12+
*/
13+
public class MyPagerAdapter extends FragmentPagerAdapter {
14+
private ArrayList<Fragment> mFragments = new ArrayList<>();
15+
private String[] mTitles;
16+
17+
public MyPagerAdapter(FragmentManager fm, ArrayList<Fragment> mFragments, String[] mTitles) {
18+
super(fm);
19+
this.mFragments = mFragments;
20+
this.mTitles = mTitles;
21+
}
22+
23+
@Override
24+
public int getCount() {
25+
return mFragments.size();
26+
}
27+
28+
@Override
29+
public CharSequence getPageTitle(int position) {
30+
return mTitles[position];
31+
}
32+
33+
@Override
34+
public Fragment getItem(int position) {
35+
return mFragments.get(position);
36+
}
37+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package cn.hugeterry.coderfun.beans;
2+
3+
import java.util.List;
4+
5+
/**
6+
* Created by hugeterry(http://hugeterry.cn)
7+
* Date: 16/2/15 19:41
8+
*/
9+
public class DataResults {
10+
/**
11+
*{"error":false,
12+
* "results":[{"who":"MVP","publishedAt":"2016-02-15T03:49:24.372Z","desc":"一个轻量级的YouTube","type":"Android","url":"https://github.com/theScrabi/NewPipe","used":true,"objectId":"56c1401a71cfe4005c961746","createdAt":"2016-02-15T03:03:54.236Z","updatedAt":"2016-02-15T03:49:25.335Z"},{"who":"MVP","publishedAt":"2016-02-15T03:49:24.370Z","desc":"The missing bridge between Java and native C++","type":"Android","url":"https://github.com/bytedeco/javacpp","used":true,"objectId":"56c13f0da34131005b81bddd","createdAt":"2016-02-15T02:59:25.798Z","updatedAt":"2016-02-15T03:49:26.327Z"},{"who":"有时放纵","publishedAt":"2016-02-15T03:49:24.369Z","desc":"自动将App的布局截图到各个设备上","type":"Android","url":"https://github.com/fastlane/screengrab","used":true,"objectId":"56c139327db2a200599cd825","createdAt":"2016-02-15T02:34:26.161Z","updatedAt":"2016-02-15T03:49:26.327Z"},{"who":"Jason","publishedAt":"2016-02-15T03:49:24.364Z","desc":"《Kotlin for android developers》中文版翻译","type":"Android","url":"https://github.com/wangjiegulu/kotlin-for-android-developers-zh","used":true,"objectId":"56c1354f75c4cd7bcfcb5f89","createdAt":"2016-02-15T02:17:51.665Z","updatedAt":"2016-02-15T03:49:25.329Z"},{"who":"有时放纵","publishedAt":"2016-02-15T03:49:24.362Z","desc":"一个变形的toolbar,可以随时折叠和展开","type":"Android","url":"https://github.com/badoualy/morphy-toolbar","used":true,"objectId":"56c0215832132c0052b50812","createdAt":"2016-02-14T06:40:24.422Z","updatedAt":"2016-02-15T03:49:25.328Z"},{"who":"Jason","publishedAt":"2016-02-04T07:14:01.798Z","desc":"工具类库","type":"Android","url":"https://github.com/CommonUtils/android","used":true,"objectId":"56b1c0d175c4cd7bcf3f3b6f","createdAt":"2016-02-03T08:56:49.059Z","updatedAt":"2016-02-04T07:14:02.717Z"},{"who":"Jason","publishedAt":"2016-02-04T07:14:01.797Z","desc":"一头headerviewpager可以固定和滚动的片段","type":"Android","url":"https://github.com/XavierSAndroid/MagicHeaderViewPager","used":true,"objectId":"56b1bef775c4cd7bcf3f2bb0","createdAt":"2016-02-03T08:48:55.519Z","updatedAt":"2016-02-04T07:14:03.464Z"},{"who":"Jason","publishedAt":"2016-02-04T07:14:01.794Z","desc":"通过手势模拟的iOS3DTouch效果","type":"Android","url":"https://github.com/nantaphop/HoverTouchView","used":true,"objectId":"56b1bde775c4cd7bcf3f2256","createdAt":"2016-02-03T08:44:23.205Z","updatedAt":"2016-02-04T07:14:02.494Z"},{"who":"wuzheng","publishedAt":"2016-02-04T07:14:01.792Z","desc":"CodeBoy微信抢红包外挂","type":"Android","url":"http://www.happycodeboy.com/index.php/archives/10/","used":true,"objectId":"56b199ae79bc44005049216b","createdAt":"2016-02-03T06:09:50.919Z","updatedAt":"2016-02-04T07:14:02.518Z"},{"who":"Jason","publishedAt":"2016-02-04T07:14:01.788Z","desc":"Gradle In Action 的中文版","type":"Android","url":"https://github.com/LippiOuYang/GradleInActionZh","used":true,"objectId":"56add6f5c4c971005323747c","createdAt":"2016-01-31T09:42:13.635Z","updatedAt":"2016-02-04T07:14:02.317Z"}]}
13+
*/
14+
private boolean error;
15+
private List<Results> results;
16+
17+
public List<Results> getResults() {
18+
return results;
19+
}
20+
21+
public void setResults(List<Results> results) {
22+
this.results = results;
23+
}
24+
25+
public boolean isError() {
26+
return error;
27+
}
28+
29+
public void setError(boolean error) {
30+
this.error = error;
31+
}
32+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
package cn.hugeterry.coderfun.beans;
2+
3+
import java.util.List;
4+
5+
/**
6+
* Created by hugeterry(http://hugeterry.cn)
7+
* Date: 16/2/15 19:50
8+
*/
9+
public class DayResults {
10+
/**
11+
* {"error":false,
12+
* "results":{"iOS":[{"who":"CallMeWhy","publishedAt":"2015-08-07T03:57:48.070Z","desc":"LLVM 简介","type":"iOS","url":"http://adriansampson.net/blog/llvm.html","used":true,"objectId":"55c40ac360b2c9d32a67ca25","createdAt":"2015-08-07T01:32:51.588Z","updatedAt":"2015-08-15T03:15:54.384Z"},{"who":"鲍永章","publishedAt":"2015-08-07T03:57:47.242Z","desc":"基于TextKit的UILabel,支持超链接和自定义表达式。","type":"iOS","url":"https://github.com/molon/MLLabel","used":true,"objectId":"55c372fe60b2f809e41eb388","createdAt":"2015-08-06T14:45:18.733Z","updatedAt":"2015-08-15T03:15:54.536Z"},{"who":"CallMeWhy","publishedAt":"2015-08-07T03:57:48.083Z","desc":"Swift 和 C 函数","type":"iOS","url":"http://chris.eidhof.nl/posts/swift-c-interop.html","used":true,"objectId":"55c40aea00b025867b19c9af","createdAt":"2015-08-07T01:33:30.871Z","updatedAt":"2015-08-15T03:15:54.408Z"},{"who":"CallMeWhy","publishedAt":"2015-08-07T03:57:48.174Z","desc":"Arrays Linked Lists 和性能比较","type":"iOS","url":"http://airspeedvelocity.net/2015/08/03/arrays-linked-lists-and-performance/","used":true,"objectId":"55c40b0800b0fac2c2809acc","createdAt":"2015-08-07T01:34:00.984Z","updatedAt":"2015-08-15T03:15:55.105Z"}],"Android":[{"who":"mthli","publishedAt":"2015-08-07T03:57:48.045Z","desc":"类似Link Bubble的悬浮式操作设计","type":"Android","url":"https://github.com/recruit-lifestyle/FloatingView","used":true,"objectId":"55c309a800b00045333db517","createdAt":"2015-08-06T07:15:52.065Z","updatedAt":"2015-08-15T03:15:55.098Z"},{"who":"lxxself","publishedAt":"2015-08-07T03:57:47.317Z","desc":"Android开发中,有哪些让你觉得相见恨晚的方法、类或接口?","type":"Android","url":"http://www.zhihu.com/question/33636939","used":true,"objectId":"55c40ad340ac7d0a9507b324","createdAt":"2015-08-07T01:33:07.815Z","updatedAt":"2015-08-15T03:15:54.407Z"},{"who":"鲍永章","publishedAt":"2015-08-07T03:57:48.076Z","desc":"使用注解来处理Activity的状态恢复","type":"Android","url":"https://github.com/tom91136/Akatsuki","used":true,"objectId":"55c3769660b2750766971ce6","createdAt":"2015-08-06T15:00:38.350Z","updatedAt":"2015-08-15T03:15:54.866Z"},{"who":"有时放纵","publishedAt":"2015-08-07T03:57:48.142Z","desc":"Android Lollipop联系人之PinnedListView简单使用","type":"Android","url":"https://git.oschina.net/way/PinnedHeaderListView","used":true,"objectId":"55c415c060b2d140ca882eac","createdAt":"2015-08-07T02:19:44.342Z","updatedAt":"2015-08-15T03:15:55.020Z"},{"who":"鲍永章","publishedAt":"2015-08-07T03:57:48.073Z","desc":"图片可以自动滚动的ImageView,可以实现视差效果。","type":"Android","url":"https://github.com/Q42/AndroidScrollingImageView","used":true,"objectId":"55c3761400b00045334480d2","createdAt":"2015-08-06T14:58:28.171Z","updatedAt":"2015-08-15T03:15:55.123Z"}],"瞎推荐":[{"who":"lxxself","publishedAt":"2015-08-07T03:57:48.084Z","desc":"程序员的电台FmM,这个页面chrome插件有问题啊哭,我写了回删除不了啊","type":"瞎推荐","url":"https://cmd.fm/","used":true,"objectId":"55c40f5e00b00045334934b4","createdAt":"2015-08-07T01:52:30.267Z","updatedAt":"2015-08-15T03:15:54.383Z"}],"拓展资源":[{"who":"lxxself","publishedAt":"2015-08-07T03:57:48.081Z","desc":"Display GitHub code in tree format","type":"拓展资源","url":"https://github.com/buunguyen/octotree","used":true,"objectId":"55c40b8600b08484a7f3a032","createdAt":"2015-08-07T01:36:06.932Z","updatedAt":"2015-08-15T03:15:54.382Z"}],"福利":[{"who":"张涵宇","publishedAt":"2015-08-07T03:57:47.310Z","desc":"8.7——(1)","type":"福利","url":"http://ww2.sinaimg.cn/large/7a8aed7bgw1eutscfcqtcj20dw0i0q4l.jpg","used":true,"objectId":"55c4080240ac7d0a9507905e","createdAt":"2015-08-07T01:21:06.112Z","updatedAt":"2015-08-15T03:15:54.765Z"},{"who":"张涵宇","publishedAt":"2015-08-07T03:57:47.229Z","desc":"8.7——(2)","type":"福利","url":"http://ww2.sinaimg.cn/large/7a8aed7bgw1eutsd0pgiwj20go0p0djn.jpg","used":true,"objectId":"55c4081d60b2c9d32a67a92e","createdAt":"2015-08-07T01:21:33.518Z","updatedAt":"2015-08-15T03:15:54.843Z"}],"休息视频":[{"who":"lxxself","publishedAt":"2015-08-07T03:57:48.104Z","desc":"听到就心情大好的歌,简直妖魔哈哈哈哈哈,原地址\nhttp://v.youku.com/v_show/id_XMTQxODA5NDM2.html","type":"休息视频","url":"http://www.zhihu.com/question/21778055/answer/19905413?utm_source=weibo&utm_medium=weibo_share&utm_content=share_answer&utm_campaign=share_button","used":true,"objectId":"55c35bc960b2750766954ec3","createdAt":"2015-08-06T13:06:17.211Z","updatedAt":"2015-08-15T03:15:54.872Z"}]},
13+
* "category":["iOS","Android","瞎推荐","拓展资源","福利","休息视频"]}
14+
*/
15+
private boolean error;
16+
private AllResults results;
17+
private List<String> category;
18+
19+
public static class AllResults{
20+
private List<Results> iOS;
21+
private List<Results> Android;
22+
private List<Results> 瞎推荐;
23+
private List<Results> 拓展资源;
24+
private List<Results> 福利;
25+
private List<Results> 休息视频;
26+
27+
public List<Results> get休息视频() {
28+
return 休息视频;
29+
}
30+
31+
public void set休息视频(List<Results> 休息视频) {
32+
this.休息视频 = 休息视频;
33+
}
34+
35+
public List<Results> getiOS() {
36+
return iOS;
37+
}
38+
39+
public void setiOS(List<Results> iOS) {
40+
this.iOS = iOS;
41+
}
42+
43+
public List<Results> getAndroid() {
44+
return Android;
45+
}
46+
47+
public void setAndroid(List<Results> android) {
48+
Android = android;
49+
}
50+
51+
public List<Results> get瞎推荐() {
52+
return 瞎推荐;
53+
}
54+
55+
public void set瞎推荐(List<Results> 瞎推荐) {
56+
this.瞎推荐 = 瞎推荐;
57+
}
58+
59+
public List<Results> get拓展资源() {
60+
return 拓展资源;
61+
}
62+
63+
public void set拓展资源(List<Results> 拓展资源) {
64+
this.拓展资源 = 拓展资源;
65+
}
66+
67+
public List<Results> get福利() {
68+
return 福利;
69+
}
70+
71+
public void set福利(List<Results> 福利) {
72+
this.福利 = 福利;
73+
}
74+
}
75+
76+
public boolean isError() {
77+
return error;
78+
}
79+
80+
public void setError(boolean error) {
81+
this.error = error;
82+
}
83+
84+
public AllResults getResults() {
85+
return results;
86+
}
87+
88+
public void setResults(AllResults results) {
89+
this.results = results;
90+
}
91+
92+
public List<String> getCategory() {
93+
return category;
94+
}
95+
96+
public void setCategory(List<String> category) {
97+
this.category = category;
98+
}
99+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
package cn.hugeterry.coderfun.beans;
2+
3+
/**
4+
* Created by hugeterry(http://hugeterry.cn)
5+
* Date: 16/2/15 19:29
6+
*/
7+
public class Results {
8+
/**
9+
"who": "MVP",
10+
"publishedAt": "2016-02-15T03:49:24.372Z",
11+
"desc": "一个轻量级的YouTube",
12+
"type": "Android",
13+
"url": "https://github.com/theScrabi/NewPipe",
14+
"used": true,
15+
"objectId": "56c1401a71cfe4005c961746",
16+
"createdAt": "2016-02-15T03:03:54.236Z",
17+
"updatedAt": "2016-02-15T03:49:25.335Z"
18+
*/
19+
private String who;
20+
private String publishedAt;
21+
private String desc;
22+
private String type;
23+
private String url;
24+
private String used;
25+
private String objectId;
26+
private String createdAt;
27+
private String updatedAt;
28+
29+
public String getWho() {
30+
return who;
31+
}
32+
33+
public void setWho(String who) {
34+
this.who = who;
35+
}
36+
37+
public String getPublishedAt() {
38+
return publishedAt;
39+
}
40+
41+
public void setPublishedAt(String publishedAt) {
42+
this.publishedAt = publishedAt;
43+
}
44+
45+
public String getDesc() {
46+
return desc;
47+
}
48+
49+
public void setDesc(String desc) {
50+
this.desc = desc;
51+
}
52+
53+
public String getType() {
54+
return type;
55+
}
56+
57+
public void setType(String type) {
58+
this.type = type;
59+
}
60+
61+
public String getUrl() {
62+
return url;
63+
}
64+
65+
public void setUrl(String url) {
66+
this.url = url;
67+
}
68+
69+
public String getUsed() {
70+
return used;
71+
}
72+
73+
public void setUsed(String used) {
74+
this.used = used;
75+
}
76+
77+
public String getObjectId() {
78+
return objectId;
79+
}
80+
81+
public void setObjectId(String objectId) {
82+
this.objectId = objectId;
83+
}
84+
85+
public String getCreatedAt() {
86+
return createdAt;
87+
}
88+
89+
public void setCreatedAt(String createdAt) {
90+
this.createdAt = createdAt;
91+
}
92+
93+
public String getUpdatedAt() {
94+
return updatedAt;
95+
}
96+
97+
public void setUpdatedAt(String updatedAt) {
98+
this.updatedAt = updatedAt;
99+
}
100+
}

0 commit comments

Comments
 (0)