TwT-Android 新人任务Tips
目标任务
完成News Demo新人任务,设计风格可自行发挥。
News Demo完成样例:
这里仅提示新人任务中你可能会用到的
布局&控件
布局
LinearLayout
RelativeLayout
android.support.design.widget.CoordinatorLayout
android.support.design.widget.AppBarLayout
控件
Toolbar
CardView
RecyclerView或者ListView
其他(Fragment)
Fragment作为Activity界面的一部分组成出现,下面是相关控件,对应不同的Fragment实现形式。
android.support.v4.view.ViewPager
android.support.v4.app.FragmentTabHost
网络请求与多线程
网络请求框架
HttpURLConnection
HttpClient
AsyncHttpClient
Volley
OkHttp (OkHttp, Okhttp2.x, OkHttp3)
Retrofit (Retrofit, Retrofit2) (学习成本较高)
开启多线程
Thread
Handler
Message
AsyncTask (异步任务)
RxJava(学习成本较高,前面几种更基础)
其他(URL获取图片并显示)
网络请求+开启新线程+Bitmap
Glide
Json数据解析
JSONObject类
Gson解析
下拉刷新与上拉加载
下拉刷新
SwipeRefreshLayout
上拉加载
滑动监听及是否滑动到最后一个条目的判断
gradle依赖包
具体版本视自己情况而定
布局
'com.android.support:design:25.1.0' (支持CoordinatorLayout,AppBar和Tabs等)
'com.android.support:recyclerview-v7:25.1.0'
'com.android.support:cardview-v7:25.1.0'
网络请求
Volley:
'com.mcxiaoke.volley:library:1.0.19'
OkHttp (OkHttp, OkHttp2.x):
'com.squareup.okhttp:okhttp:2.7.5'
'com.squareup.okio:okio:1.13.0' (okhttp内部依赖okio,别忘了导入okio)
OkHttp3
'com.squareup.okhttp3:okhttp:3.9.0'
Retrofit (Retrofit或Retrofit2)
'com.squareup.retrofit:retrofit:2.0.0-beta2'
'com.squareup.retrofit2:retrofit:2.3.0'
多线程
RxJava:
'io.reactivex:rxjava:1.2.1'
数据解析
Gson:
'com.google.code.gson:gson:2.8.1'
URL获取图片并显示
Glide:
'com.github.bumptech.glide:glide:4.1.1'
最后小结
1. 你可能会用到的网站:
Generate Plain Old Java Objects from JSON or JSON-Schema.
2. 新闻api会在新人考核文档中告诉大家。
3. 如有问题欢迎沟通交流。
4. 期待你的新人作品 :)