-
數(shù)據(jù)適配器——BaseAdapter查看全部
-
數(shù)據(jù)適配器-BaseAdapter方法查看全部
-
<轉(zhuǎn)> 老師畫的圖是錯(cuò)誤的,從此圖中至少應(yīng)該一次加載8個(gè)item,然后開始才是從Recycler中去取出被畫成的item。因?yàn)榈玦tem1還沒完全滑出屏幕時(shí),此時(shí)item8已經(jīng)顯示在界面上了,所以一次至少的加載8個(gè)item查看全部
-
data source,adapter,adapterView 三者的關(guān)系。查看全部
-
BaseAdapter總結(jié)查看全部
-
普通式查看全部
-
BaseAdapter緩存機(jī)制查看全部
-
Base查看全部
-
1查看全部
-
1查看全部
-
ItemBean的使用: 我們通常創(chuàng)建一個(gè)Bean對(duì)象來表示listView中一行顯示的數(shù)據(jù)。 創(chuàng)建List<ItemBean> itemBeanList=new ArrayList<>(); 通過for循環(huán)來添加數(shù)組內(nèi)容查看全部
-
BaseAdapter基本結(jié)構(gòu) public int getCoutnt():適配器中數(shù)據(jù)集中數(shù)據(jù)的個(gè)數(shù) public Object getItem(int position):獲取數(shù)據(jù)集中與指定索引對(duì)應(yīng)的數(shù)據(jù)項(xiàng) public long getItemId(int position):獲取指定行對(duì)應(yīng)的ID public View getView(int position,View convertView,ViewGroup parent):獲取每一個(gè)Item的顯示內(nèi)容查看全部
-
ViewHolder優(yōu)化BaseAdapter查看全部
-
使用ListView的緩存機(jī)制 1.在適配器的getView方法中。不使用自定義的View對(duì)象。而是使用getView參數(shù)中提供的converView對(duì)象。 原因: 將xml使用LayoutInflate轉(zhuǎn)化為View對(duì)象是一個(gè)非常耗時(shí)的時(shí)間。如果系統(tǒng)已將xml轉(zhuǎn)化為view對(duì)象(convertView),這個(gè)時(shí)候如果再自行創(chuàng)建View對(duì)象,將會(huì)無故的消耗時(shí)間。 2.判斷系統(tǒng)是否加載了view對(duì)象,如果沒有,手動(dòng)加載 if(converView==null) { mInflate=finflate(R.layout.item,null); } 其他知識(shí)要點(diǎn): 1. findViewById()是一個(gè)耗時(shí)的操作。每次findViewById系統(tǒng)都會(huì)去便利視圖樹。如果視圖較多(視圖樹較大),將會(huì)消耗大量的時(shí)間。 這也是當(dāng)前方法不妥的地方,需要改進(jìn)查看全部
-
BaseAdapter中沒有用到“緩存機(jī)制”的反例 1.在getView方法中,只用到了position參數(shù),忽略其他參數(shù)。 2.每次都是重新創(chuàng)建view對(duì)象。 3. 所以沒有用到ListView的緩存機(jī)制查看全部
舉報(bào)
0/150
提交
取消