1、retrofit2 addConverterFactory
返回值有兩種不同情況,一種是gson直接轉(zhuǎn)換對象 添加GsonConverterFactory.create()、
一種返回原本json串,添加ScalarsConverterFactory.create()
項目中碰到的情況是,獲取html代碼,然后解析圖片地址。但是使用了統(tǒng)一的retrofit,是gson自動轉(zhuǎn)換結(jié)果的。
2、集成ReactNative步驟。
1、copy node_modeles .flowconfig package.json index.android.js進項目。
2、配置gradle:app project。配置RNActivity。
3、配置manifest權(quán)限以及DEVactivity。
4、npm start.
3、自定義ViewGroup動態(tài)添加子view,子view的LayoutParams問題
TextView textView = (TextView) TextView.inflate(context, R.layout.tag_text_layout, null);
如果子view是通過上面方式在代碼里動態(tài)添加進自定義的ViewGroup中的,要給子view設(shè)置LayoutParams,否則,會調(diào)用父容器,也就是自定義ViewGroup的generateDefaultLayoutParams(),進行設(shè)置。
LayoutInflater inflater=getLayoutInflater();
TextView textView = (TextView) inflater.inflate(R.layout.tag_text_layout,articleFlow,false);
但是以這種方式去生成TextView,就可以拿到在XML內(nèi)設(shè)置的參數(shù)。
因為以第一種方式生成View,會失去XML內(nèi)根布局(最外層布局)的屬性設(shè)置,并且默認沒有LayoutParams,通過父容器的generateDefaultLayoutParams(),重新生成的LayoutParams沒有任何額外屬性,所以需要手動設(shè)置LayoutParams給子View,第二種方式拿到的View,可以拿到XML中設(shè)置的值。并且正常生效。
4、服務(wù)端接口內(nèi)報錯,回應(yīng)的Content-length為0
使用Retrofitd的Gson轉(zhuǎn)換會報錯。因為回傳的報文長度為0,一個長度都沒有。也不是空字符串,所以解析會失敗,出現(xiàn)錯誤。
如果該文章對您有所幫助,希望您可以點下喜歡~給作者一點鼓勵!