TwT-Android 新人任務(wù)Tips
目標(biāo)任務(wù)
完成News Demo新人任務(wù),設(shè)計(jì)風(fēng)格可自行發(fā)揮歉铝。
News Demo完成樣例:
這里僅提示新人任務(wù)中你可能會(huì)用到的
布局&控件
布局
LinearLayout
RelativeLayout
android.support.design.widget.CoordinatorLayout
android.support.design.widget.AppBarLayout
控件
Toolbar
CardView
RecyclerView或者ListView
其他(Fragment)
Fragment作為Activity界面的一部分組成出現(xiàn),下面是相關(guān)控件蝌数,對(duì)應(yīng)不同的Fragment實(shí)現(xiàn)形式打毛。
android.support.v4.view.ViewPager
android.support.v4.app.FragmentTabHost
網(wǎng)絡(luò)請(qǐng)求與多線程
網(wǎng)絡(luò)請(qǐng)求框架
HttpURLConnection
HttpClient
AsyncHttpClient
Volley
OkHttp (OkHttp, Okhttp2.x, OkHttp3)
Retrofit (Retrofit, Retrofit2)? (學(xué)習(xí)成本較高)
開(kāi)啟多線程
Thread
Handler
Message
AsyncTask (異步任務(wù))
RxJava(學(xué)習(xí)成本較高,前面幾種更基礎(chǔ))
其他(URL獲取圖片并顯示)
網(wǎng)絡(luò)請(qǐng)求+開(kāi)啟新線程+Bitmap
Glide
Json數(shù)據(jù)解析
JSONObject類
Gson解析
下拉刷新與上拉加載
下拉刷新
SwipeRefreshLayout
上拉加載
滑動(dòng)監(jiān)聽(tīng)及是否滑動(dòng)到最后一個(gè)條目的判斷
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'
網(wǎng)絡(luò)請(qǐng)求
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內(nèi)部依賴okio,別忘了導(dǎo)入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'
數(shù)據(jù)解析
Gson:
'com.google.code.gson:gson:2.8.1'
URL獲取圖片并顯示
Glide:
'com.github.bumptech.glide:glide:4.1.1'
最后小結(jié)
1. 你可能會(huì)用到的網(wǎng)站:
? ? Json在線數(shù)據(jù)解析網(wǎng)站
? ??Generate Plain Old Java Objects from JSON or JSON-Schema.
2. 新聞api會(huì)在新人考核文檔中告訴大家规哲。
3. 如有問(wèn)題歡迎溝通交流奢入。
4. 期待你的新人作品 :)