亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Android必學-BaseAdapter的使用與優化

難度初級
時長45分
學習人數
綜合評分9.63
243人評價 查看評價
9.9 內容實用
9.7 簡潔易懂
9.3 邏輯清晰
  • ViewHolder優化BaseAdapter思路
    查看全部
    0 采集 收起 來源:總結

    2015-08-08

  • BaseAdapter基本結構 public int getCount();//適配器中數據集中數據的個數 public Object getItem(int position);//獲取數據集中與指定索引對應的數據項 public long getItemId(int position);//獲取指定行對應的ID public View getView(int position,View convertView,ViewGroup parent);//獲取每一個Item顯示內容
    查看全部
  • 計算總時間
    查看全部
    0 采集 收起 來源:深入講解

    2015-08-08

  • 記錄結束的時間
    查看全部
    0 采集 收起 來源:深入講解

    2015-08-08

  • 測試程序:計算程序運行的時間
    查看全部
    0 采集 收起 來源:深入講解

    2015-08-08

  • viewholder 作為findviewbyid的一個轉接,避免系統大量的遍歷提高效率。
    查看全部
    0 采集 收起 來源:深入講解

    2015-08-08

  • 文藝式的好處
    查看全部
    0 采集 收起 來源:文藝式

    2015-08-08

  • 文藝式寫法
    查看全部
    0 采集 收起 來源:文藝式

    2015-08-08

  • 創建內部類viewHolder
    查看全部
    0 采集 收起 來源:文藝式

    2015-08-08

  • 適配器是繼承自BaseAdapter 1. 逗比式適配器 在逗比式getView()方法中,每次都會重新創建一個新的View。然后從這個View實例中找到對應的組件進行填充數據。 2. 普通式適配器 在普通式getView()方法中,先去判斷當前的View是否已經緩存過,沒有緩存過才去創建。 if(convertView == null) { convertView = mInflater.inflate(R.layout.item, null); } 普通式和逗比式的區別在于判斷當前View實例是否被緩存過,這樣就利用了ListView的緩存機制,避免了重新創建了當前View對象。因為通過inflate()轉換xml到一個view的過程需要一定的時間。 3. 文藝式適配器 文藝式getView()方法是利用了ViewHolder類,優化了inflate()和findViewById()的耗時操作。 (1)創建一個ViewHolder對象,通過ViewHolder對象,就將這些通過findViewById()找到的組件對象保存到了ViewHolder對應的組件對象中 (2)通過setTag()方法將這個viewHolder和當前的view建立聯系 //這樣就可以將沒有緩存過的View對象創建出來,并將其每個組件保存在ViewHolder對象中。 (3)當View不為空的時候就可以通過convertView.getTag()將它所關聯的viewHoloder對象取出。 (4)最后通過viewHolder中保存的組件對象設置當前的view對象 //通過ViewHolder類其實是優化了findViewById()的耗時操作
    查看全部
    4 采集 收起 來源:文藝式

    2015-08-08

  • 創建內部類ViewHolder,成員變量即ImageView imageView,TextView title,TextView content.避免重復的findViewById操作,若convertView為空則通過viewHolder的成員變量將findViewById到的控件保存起來,并將convertView.setTag(viewHolder),建立一個convertView和viewHolder之間的關聯關系;若convertView不為空,則可直接通過viewHolder=(ViewHolder)convertView.getTag;獲取viewHolder中保存的控件,用viewHolder的成員變量設置
    查看全部
    0 采集 收起 來源:文藝式

    2015-08-08

  • BaseAdapter的三重境界之普通式
    查看全部
  • 普通式相比于逗比式只是將每次循環中自己創建的view換成getView方法中參數的convertView,調用getView方法先判斷view是否為空,不為空表示已經加載過了存在于緩沖池中,不需要重新創建新的View類對象來轉換布局文件,布局文件轉換為View類對象也需要消耗不小的資源
    查看全部
  • 使用“逗比”方式重寫BaseAdapter的嚴重缺點——沒有利用到ListView的緩存機制,每行都是新建一個View對象。
    查看全部
  • 使用“逗比”方式重寫BaseAdapter的嚴重缺點——沒有利用到ListView的緩存機制,每行都是新建一個View對象。
    查看全部

舉報

0/150
提交
取消
課程須知
本課程是Android初-中級課程 1、熟練掌握基本的Android應用程序開發方法 2、熟練掌握Android中常見的適配器的使用 3、熟練掌握BaseAdapter中各方法的意義
老師告訴你能學到什么?
1、了解ListView的緩存機制 2、 BaseAdapter的逗比式 3、 BaseAdapter的普通式 4、 BaseAdapter的文藝式

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!