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

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

Android必學-BaseAdapter的使用與優化

難度初級
時長45分
學習人數
綜合評分9.63
243人評價 查看評價
9.9 內容實用
9.7 簡潔易懂
9.3 邏輯清晰
  • 1、BaseAdapter的三重境界之普通式的特點: (1)利用了ListView的緩存特性,若沒有緩存才創建新的View, (2)但是findViewById依然會浪費大量時間; 2、普通式與逗比式的差別 相比于逗比式只是將每次循環中自己創建的view換成getView方法中參數的convertView,調用getView方法先判斷view是否為空,不為空則表示已經加載過了存在于緩沖池中,不需要重新創建新的View類對象來轉換布局文件; BaseAdapter的普通式: 充分利用ListView的緩存機制,如果沒有緩存才創建新的view. 但是findViewById依然會浪費大量的時間。
    查看全部
  • 新建數據適配器: 1.創建一個MyAdapter.java類,繼承BaseAdapter,成員變量mList,在MyAdapter的構造方法中保存傳進來的List<ItemBean>類型的數據源。 2.getCount()方法返回ListView需要顯示的數據數量 mList.size()獲取數據源的數據數量 getItem()方法取指定索引的數據項,mList.get(position)獲取position getItemId()方法獲取索引項,直接返回position getView()方法返回數據項顯示的內容:/*逗比式,不考慮優化,每次創建新的view,效率低下*/ *通過LayoutInflater方法將一個xml文件轉換為view對象(之后才能進行控件的初始化findviewbyid操作) ----成員變量LayoutInflater mInflater;//布局裝載器對象 ----mInflater=LayoutInflater.from(context);//context是要使用當前的Adapter的界面對象 *View view=mIflater.inflate(R.layout.item,null) *對封裝的控件分別進行初始化操作 3.MainActivity中初始化ListView控件,并配置適配器listView.setAdapter(new MyAdapter(this,itemBeanList));
    查看全部
  • Adapter繼承自BaseAdapter 中的將XML轉換為View對象: LayoutInflater mInflater; mInflater=LayoutInflatet.from(context) 在getView中通過 View view=(View)mInflater.inflate(R.layout.xxx,null)加載Item布局轉換為View對象 通過View對象訪問到Item布局中的控件 ImageView image=(ImageView)view.findViewById(R.id.xxx) 然后通過 image.setImageResource(mlist.getItem(position).XXXid)設置圖片 數據源綁定到ListView上: listView.setAdapter(new MyAdapter(this,datalist數據源))
    查看全部
  • *創建一個ItemBean.java文件來封裝ListView中的控件。 并在封裝文件中寫構造函數對成員變量進行初始化。 *創建數據源時,將數據源的類型直接定義為List<ItemBean>,List<ItemBean> itemBeanList=new ArrayList<>();再用循環給ListView的每一行進行賦值。
    查看全部
  • ItemBean的使用: 我們通常創建一個Bean對象來表示listView中一行顯示的數據。 創建List<ItemBean> itemBeanList=new ArrayList<>(); 通過for循環來添加數組內容
    查看全部
  • item.xml
    查看全部
  • 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顯示內容
    查看全部
  • ListView的顯示和緩存機制 總結來講: 需要才顯示,顯示完就被回收到緩沖池中。 1. 屏幕上滑時,先將item1回收到View緩沖池中 2. 新要顯示的item8從View緩沖池中取出,并重新設置好item8所要顯示的數據 3. item8顯示出來
    查看全部
  • 1.什么是數據適配器:通過數據適配器,我們可以將數據源和UI控件聯系起來。 2.數據適配器adapter的作用就是將多種多樣的數據源適配成listView可以讀取的模式。 (1)降低程序的耦合性 (2)容易擴展 3.最常用的數據適配器:BaseAdapter
    查看全部
  • BaseAdapter文藝式 1、ViewHolder: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()的耗時操作
    查看全部
    0 采集 收起 來源:文藝式

    2016-07-10

  • 數據適配器的關系
    查看全部
  • viewhold優化
    查看全部
    0 采集 收起 來源:文藝式

    2016-07-09

  • 初始化context
    查看全部
  • baseadapter
    查看全部
  • 數據適配器
    查看全部

舉報

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

微信掃碼,參與3人拼團

微信客服

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

幫助反饋 APP下載

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

公眾號

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

友情提示:

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