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

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

listView:顯示列表的控件;

數據適配器:連接數據源與視圖界面的橋梁;
 ArrayAdapter--數組;
 SimpleAdapter--復雜的數據類型;

SimpleAdapter的構造函數:
  new SimpleAdapter(context,data,resource,from,to);
    context--上下文;
    data   --數據源,一個map所組成的list集合,每一個map對應的是listview中的一行,每一個map

的key必須包含所有在from中所指的值;
    resource為每一個列表項的布局文件id;
    from   --記錄map中的key;
    to     --綁定數據視圖的id,與from對應;

ArrayAdapter:
  第一步:聲明listView與適配器,初始化listView;
  第二步:new ArrayAdapter<String>(,,);
  第三步;listView.setAdapter(adapter);

SimpleAdapter:
  第一步:聲明listView,datalist與適配器,初始化listView;
  第二步:new SimpleAdapter(this,data,resource,from,to);
     datalist= new ArrayAdpter<Map<String,Ibject>>();
    resource-要在layout中新建一個item的xml文件linearLayout,把控件拖入其中作為每一個列表項

的布局格式;
    to為new出resource文件中所有控件的id如new int[]{R.id.imageView,R.id.TextView};
    from為new String[]{"imageView","TextView"};
    data:
    1.創建List<Map<String,Object>> dataList;
    2.dataList=new ArrayList<Map<String,Object>>();
    3.定義函數getData();
 private List<Map<String,Object>> getData()
 {
    for(int i=0;i<20;i++)
    {
    Map<String,Object>map=new HashMap<String,Object>();
    map.put("imageView",R.drawable....);
    map.put("TextView","imooc"+i);
    dataList.add(map);
     }
    return dataList;
 }


監聽器:
 OnItemClickListener:單條目的點擊事件;
 OnScrollListener:滾動中加載數據;

 OnItemClickListener():
  第一步:在Activity中通過接口方式實現implements OnItemClickListener();
  第二步:讓listView加載事件監聽器setOnItemClickListener(this);
  第三步:在OnItemClickListener()函數中,通過listView的getItemAtPosition(position)獲得位

置值,并將值傳給position;通過Toast.makeText(context,text,duration).show();
     context--this為上下文;
     text--"position :"+position 輸出內容;
     duration--Toast.LENGTH_SHORT為打印時長;

 OnScrollListener():
   第一步:同OnItemClickListener()的第一步;
      創建出了兩個函數onScrollStateChanged(),onScroll();
   第二步:讓listView加載事件監聽器setOnScrollListener(this);
   第三步:在OnScrollStateChange()中scrollState共有3種狀態:
        SCROLL_STATE_FLING:用戶在手指離開屏幕前用力滑動,由于慣性繼續滑動;
        SCROLL_STATE_IDLE:視圖已經停止;
        SCROLL_STATE_TOUCH_SCROLL:用戶手指沒有離開屏幕,正在滑動;


simp_adapter.notifyDataSetChanged();通知UI重新刷新;
 


正在回答

1 回答

總結的很好


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Android攻城獅的第二門課(第1季)
  • 參與學習       111140    人
  • 解答問題       1560    個

本課程由淺入深地帶您學會Android的常用控件的開發和使用

進入課程
微信客服

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

幫助反饋 APP下載

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

公眾號

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